diff --git a/Config/BuildSettings.swift b/Config/BuildSettings.swift
index 525870b51..d07f6efb5 100644
--- a/Config/BuildSettings.swift
+++ b/Config/BuildSettings.swift
@@ -165,8 +165,20 @@ final class BuildSettings: NSObject {
static let roomsAllowToJoinPublicRooms: Bool = true
// MARK: - Analytics
- static let analyticsServerUrl = URL(string: "https://piwik.riot.im/piwik.php")
- static let analyticsAppId = "14"
+ #if DEBUG
+ /// Host to use for PostHog analytics during development. Set to nil to disable analytics in debug builds.
+ static let analyticsHost: String? = "https://posthog-poc.lab.element.dev"
+ /// Public key for submitting analytics during development. Set to nil to disable analytics in debug builds.
+ static let analyticsKey: String? = "rs-pJjsYJTuAkXJfhaMmPUNBhWliDyTKLOOxike6ck8"
+ #else
+ /// Host to use for PostHog analytics. Set to nil to disable analytics.
+ static let analyticsHost: String? = "https://posthog.hss.element.io"
+ /// Public key for submitting analytics. Set to nil to disable analytics.
+ static let analyticsKey: String? = "phc_Jzsm6DTm6V2705zeU5dcNvQDlonOR68XvX2sh1sEOHO"
+ #endif
+
+ /// The URL to open with more information about analytics terms.
+ static let analyticsTermsURL = URL(string: "https://element.io/cookie-policy")!
// MARK: - Bug report
diff --git a/Podfile b/Podfile
index 92a7bdad0..714154461 100644
--- a/Podfile
+++ b/Podfile
@@ -3,7 +3,7 @@ source 'https://cdn.cocoapods.org/'
# Uncomment this line to define a global platform for your project
platform :ios, '12.1'
-# Use frameforks to allow usage of pod written in Swift (like PiwikTracker)
+# Use frameworks to allow usage of pods written in Swift
use_frameworks!
# Different flavours of pods to MatrixSDK. Can be one of:
@@ -67,8 +67,10 @@ abstract_target 'RiotPods' do
pod 'KeychainAccess', '~> 4.2.2'
pod 'WeakDictionary', '~> 2.0'
- # Piwik for analytics
- pod 'MatomoTracker', '~> 7.4.1'
+ # PostHog for analytics
+ pod 'PostHog', '~> 1.4.4'
+ pod 'AnalyticsEvents', :git => 'https://github.com/matrix-org/matrix-analytics-events.git', :branch => 'release/swift'
+ # pod 'AnalyticsEvents', :path => '../matrix-analytics-events/AnalyticsEvents.podspec'
# Remove warnings from "bad" pods
pod 'OLMKit', :inhibit_warnings => true
diff --git a/Podfile.lock b/Podfile.lock
index 3f62ea753..8ff43e554 100644
--- a/Podfile.lock
+++ b/Podfile.lock
@@ -14,6 +14,7 @@ PODS:
- AFNetworking/Serialization (4.0.1)
- AFNetworking/UIKit (4.0.1):
- AFNetworking/NSURLSession
+ - AnalyticsEvents (0.1.0)
- BlueCryptor (1.0.32)
- BlueECC (1.2.5)
- BlueRSA (1.0.200)
@@ -56,9 +57,6 @@ PODS:
- LoggerAPI (1.9.200):
- Logging (~> 1.1)
- Logging (1.4.0)
- - MatomoTracker (7.4.1):
- - MatomoTracker/Core (= 7.4.1)
- - MatomoTracker/Core (7.4.1)
- MatrixSDK (0.20.15):
- MatrixSDK/Core (= 0.20.15)
- MatrixSDK/Core (0.20.15):
@@ -76,6 +74,7 @@ PODS:
- OLMKit/olmcpp (= 3.2.5)
- OLMKit/olmc (3.2.5)
- OLMKit/olmcpp (3.2.5)
+ - PostHog (1.4.4)
- ReadMoreTextView (3.0.1)
- Realm (10.16.0):
- Realm/Headers (= 10.16.0)
@@ -103,6 +102,7 @@ PODS:
- ZXingObjC/All (3.6.5)
DEPENDENCIES:
+ - AnalyticsEvents (from `https://github.com/matrix-org/matrix-analytics-events.git`, branch `release/swift`)
- DGCollectionViewLeftAlignFlowLayout (~> 1.0.4)
- Down (~> 0.11.0)
- DSWaveformImage (~> 6.1.1)
@@ -116,10 +116,10 @@ DEPENDENCIES:
- KeychainAccess (~> 4.2.2)
- KTCenterFlowLayout (~> 1.3.1)
- libPhoneNumber-iOS (~> 0.9.13)
- - MatomoTracker (~> 7.4.1)
- MatrixSDK (= 0.20.15)
- MatrixSDK/JingleCallStack (= 0.20.15)
- OLMKit
+ - PostHog (~> 1.4.4)
- ReadMoreTextView (~> 3.0.1)
- Reusable (~> 4.1)
- SideMenu (~> 6.5)
@@ -157,9 +157,9 @@ SPEC REPOS:
- libPhoneNumber-iOS
- LoggerAPI
- Logging
- - MatomoTracker
- MatrixSDK
- OLMKit
+ - PostHog
- ReadMoreTextView
- Realm
- Reusable
@@ -173,8 +173,19 @@ SPEC REPOS:
- zxcvbn-ios
- ZXingObjC
+EXTERNAL SOURCES:
+ AnalyticsEvents:
+ :branch: release/swift
+ :git: https://github.com/matrix-org/matrix-analytics-events.git
+
+CHECKOUT OPTIONS:
+ AnalyticsEvents:
+ :commit: f1805ad7c3fafa7fd9c6e2eaa9e0165f8142ecd2
+ :git: https://github.com/matrix-org/matrix-analytics-events.git
+
SPEC CHECKSUMS:
AFNetworking: 7864c38297c79aaca1500c33288e429c3451fdce
+ AnalyticsEvents: 333bf47d67dc628fadd29ce887b7ac93d8bd6e05
BlueCryptor: b0aee3d9b8f367b49b30de11cda90e1735571c24
BlueECC: 0d18e93347d3ec6d41416de21c1ffa4d4cd3c2cc
BlueRSA: dfeef51db96bcc4edec654956c1581adbda4e6a3
@@ -198,9 +209,9 @@ SPEC CHECKSUMS:
libPhoneNumber-iOS: 0a32a9525cf8744fe02c5206eb30d571e38f7d75
LoggerAPI: ad9c4a6f1e32f518fdb43a1347ac14d765ab5e3d
Logging: beeb016c9c80cf77042d62e83495816847ef108b
- MatomoTracker: 24a846c9d3aa76933183fe9d47fd62c9efa863fb
MatrixSDK: 2f4d3aacb1c53e2785f0be71d24b8e62e5c5c056
OLMKit: 9fb4799c4a044dd2c06bda31ec31a12191ad30b5
+ PostHog: 4b6321b521569092d4ef3a02238d9435dbaeb99f
ReadMoreTextView: 19147adf93abce6d7271e14031a00303fe28720d
Realm: b6027801398f3743fc222f096faa85281b506e6c
Reusable: 6bae6a5e8aa793c9c441db0213c863a64bce9136
@@ -214,6 +225,6 @@ SPEC CHECKSUMS:
zxcvbn-ios: fef98b7c80f1512ff0eec47ac1fa399fc00f7e3c
ZXingObjC: fdbb269f25dd2032da343e06f10224d62f537bdb
-PODFILE CHECKSUM: 989bcc8b1857dc64a9b810ddaf4446903adbe162
+PODFILE CHECKSUM: e60814fe2084a7dca3f82c3a1c4a1b763ae822c0
COCOAPODS: 1.11.2
diff --git a/Riot/Assets/Images.xcassets/Authentication/Analytics/AnalyticsCheckmark.imageset/AnalyticsTick.pdf b/Riot/Assets/Images.xcassets/Authentication/Analytics/AnalyticsCheckmark.imageset/AnalyticsTick.pdf
new file mode 100644
index 000000000..9696208e3
--- /dev/null
+++ b/Riot/Assets/Images.xcassets/Authentication/Analytics/AnalyticsCheckmark.imageset/AnalyticsTick.pdf
@@ -0,0 +1,123 @@
+%PDF-1.7
+
+1 0 obj
+ << >>
+endobj
+
+2 0 obj
+ << /Length 3 0 R >>
+stream
+/DeviceRGB CS
+/DeviceRGB cs
+q
+1.000000 0.000000 -0.000000 1.000000 1.000000 -1.000000 cm
+0.049479 0.742188 0.545395 scn
+10.000000 23.000000 m
+3.947715 23.000000 -1.000000 18.052284 -1.000000 12.000000 c
+1.000000 12.000000 l
+1.000000 16.947716 5.052285 21.000000 10.000000 21.000000 c
+10.000000 23.000000 l
+h
+-1.000000 12.000000 m
+-1.000000 5.947716 3.947715 1.000000 10.000000 1.000000 c
+10.000000 3.000000 l
+5.052285 3.000000 1.000000 7.052285 1.000000 12.000000 c
+-1.000000 12.000000 l
+h
+10.000000 1.000000 m
+16.052284 1.000000 21.000000 5.947716 21.000000 12.000000 c
+19.000000 12.000000 l
+19.000000 7.052285 14.947715 3.000000 10.000000 3.000000 c
+10.000000 1.000000 l
+h
+21.000000 12.000000 m
+21.000000 18.052284 16.052284 23.000000 10.000000 23.000000 c
+10.000000 21.000000 l
+14.947715 21.000000 19.000000 16.947716 19.000000 12.000000 c
+21.000000 12.000000 l
+h
+f
+n
+Q
+q
+1.000000 0.000000 -0.000000 1.000000 5.545532 4.655060 cm
+0.049479 0.742188 0.545395 scn
+0.717378 6.153159 m
+0.332610 6.549356 -0.300487 6.558620 -0.696684 6.173852 c
+-1.092881 5.789084 -1.102146 5.155987 -0.717378 4.759790 c
+0.717378 6.153159 l
+h
+3.257576 2.102139 m
+2.540198 1.405455 l
+2.728505 1.211555 2.987285 1.102139 3.257576 1.102139 c
+3.527867 1.102139 3.786646 1.211555 3.974954 1.405455 c
+3.257576 2.102139 l
+h
+11.626469 9.284243 m
+12.011237 9.680439 12.001972 10.313537 11.605776 10.698304 c
+11.209579 11.083073 10.576482 11.073808 10.191713 10.677610 c
+11.626469 9.284243 l
+h
+-0.717378 4.759790 m
+2.540198 1.405455 l
+3.974954 2.798823 l
+0.717378 6.153159 l
+-0.717378 4.759790 l
+h
+3.974954 1.405455 m
+11.626469 9.284243 l
+10.191713 10.677610 l
+2.540198 2.798823 l
+3.974954 1.405455 l
+h
+f
+n
+Q
+
+endstream
+endobj
+
+3 0 obj
+ 1679
+endobj
+
+4 0 obj
+ << /Annots []
+ /Type /Page
+ /MediaBox [ 0.000000 0.000000 22.000000 22.000000 ]
+ /Resources 1 0 R
+ /Contents 2 0 R
+ /Parent 5 0 R
+ >>
+endobj
+
+5 0 obj
+ << /Kids [ 4 0 R ]
+ /Count 1
+ /Type /Pages
+ >>
+endobj
+
+6 0 obj
+ << /Pages 5 0 R
+ /Type /Catalog
+ >>
+endobj
+
+xref
+0 7
+0000000000 65535 f
+0000000010 00000 n
+0000000034 00000 n
+0000001769 00000 n
+0000001792 00000 n
+0000001965 00000 n
+0000002039 00000 n
+trailer
+<< /ID [ (some) (id) ]
+ /Root 6 0 R
+ /Size 7
+>>
+startxref
+2098
+%%EOF
\ No newline at end of file
diff --git a/Riot/Assets/Images.xcassets/Authentication/Analytics/AnalyticsCheckmark.imageset/Contents.json b/Riot/Assets/Images.xcassets/Authentication/Analytics/AnalyticsCheckmark.imageset/Contents.json
new file mode 100644
index 000000000..146a290ce
--- /dev/null
+++ b/Riot/Assets/Images.xcassets/Authentication/Analytics/AnalyticsCheckmark.imageset/Contents.json
@@ -0,0 +1,15 @@
+{
+ "images" : [
+ {
+ "filename" : "AnalyticsTick.pdf",
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ },
+ "properties" : {
+ "preserves-vector-representation" : true
+ }
+}
diff --git a/Riot/Assets/Images.xcassets/Authentication/Analytics/AnalyticsLogo.imageset/AnalyticsLogo.pdf b/Riot/Assets/Images.xcassets/Authentication/Analytics/AnalyticsLogo.imageset/AnalyticsLogo.pdf
new file mode 100644
index 000000000..096c22d4b
--- /dev/null
+++ b/Riot/Assets/Images.xcassets/Authentication/Analytics/AnalyticsLogo.imageset/AnalyticsLogo.pdf
@@ -0,0 +1,641 @@
+%PDF-1.7
+
+1 0 obj
+ << /Type /XObject
+ /Length 2 0 R
+ /Group << /Type /Group
+ /S /Transparency
+ >>
+ /Subtype /Form
+ /Resources << /ExtGState << /E2 << /ca 0.400000 >>
+ /E1 << /ca 0.400000 >>
+ >> >>
+ /BBox [ 0.000000 0.000000 119.000000 93.000000 ]
+ >>
+stream
+/DeviceRGB CS
+/DeviceRGB cs
+q
+1.000000 0.000000 -0.000000 1.000000 14.875000 -0.000015 cm
+0.049479 0.742188 0.545395 scn
+0.000000 44.521278 m
+0.000000 69.109695 20.036579 89.042557 44.625000 89.042557 c
+44.625000 89.042557 l
+69.213417 89.042557 89.250000 69.109695 89.250000 44.521278 c
+89.250000 44.521278 l
+89.250000 19.932861 69.213417 0.000000 44.625000 0.000000 c
+44.625000 0.000000 l
+20.036579 0.000000 0.000000 19.932861 0.000000 44.521278 c
+0.000000 44.521278 l
+h
+f
+n
+Q
+q
+1.000000 0.000000 -0.000000 1.000000 52.227402 46.594299 cm
+1.000000 1.000000 1.000000 scn
+0.000000 20.730219 m
+0.000000 22.447567 1.395428 23.839752 3.116776 23.839752 c
+14.592426 23.839752 23.895279 14.558517 23.895279 3.109533 c
+23.895279 1.392185 22.499851 0.000000 20.778503 0.000000 c
+19.057156 0.000000 17.661728 1.392185 17.661728 3.109533 c
+17.661728 11.123821 11.149731 17.620686 3.116776 17.620686 c
+1.395428 17.620686 0.000000 19.012871 0.000000 20.730219 c
+h
+f*
+n
+Q
+q
+-1.000000 0.000000 -0.000000 -1.000000 66.772202 42.448242 cm
+1.000000 1.000000 1.000000 scn
+0.000000 20.730206 m
+0.000000 22.447552 1.395429 23.839737 3.116779 23.839737 c
+14.592443 23.839737 23.895306 14.558502 23.895306 3.109520 c
+23.895306 1.392172 22.499878 -0.000011 20.778526 -0.000011 c
+19.057177 -0.000011 17.661749 1.392172 17.661749 3.109520 c
+17.661749 11.123808 11.149744 17.620672 3.116779 17.620672 c
+1.395429 17.620672 0.000000 19.012857 0.000000 20.730206 c
+h
+f*
+n
+Q
+q
+-0.000000 1.000000 -1.000000 -0.000000 57.366512 37.265598 cm
+1.000000 1.000000 1.000000 scn
+0.000000 20.722975 m
+0.000000 22.444323 1.392186 23.839752 3.109534 23.839752 c
+14.558520 23.839752 23.839758 14.536892 23.839758 3.061234 c
+23.839758 1.339886 22.447573 -0.055544 20.730225 -0.055544 c
+19.012875 -0.055544 17.620689 1.339886 17.620689 3.061234 c
+17.620689 11.094195 11.123824 17.606197 3.109534 17.606197 c
+1.392186 17.606197 0.000000 19.001625 0.000000 20.722975 c
+h
+f*
+n
+Q
+q
+-0.000000 -1.000000 1.000000 -0.000000 61.633194 51.777008 cm
+1.000000 1.000000 1.000000 scn
+0.000000 20.722975 m
+0.000000 22.444324 1.392186 23.839752 3.109534 23.839752 c
+14.558520 23.839752 23.839758 14.536893 23.839758 3.061237 c
+23.839758 1.339888 22.447573 -0.055540 20.730225 -0.055540 c
+19.012875 -0.055540 17.620689 1.339888 17.620689 3.061237 c
+17.620689 11.094196 11.123824 17.606197 3.109534 17.606197 c
+1.392186 17.606197 0.000000 19.001627 0.000000 20.722975 c
+h
+f*
+n
+Q
+q
+1.000000 0.000000 -0.000000 1.000000 28.123089 16.695465 cm
+1.000000 1.000000 1.000000 scn
+10.448288 0.000008 m
+11.057861 0.000008 11.560491 0.448122 11.646045 1.077618 c
+12.576446 7.617959 13.464069 8.514189 19.795069 9.229038 c
+20.436726 9.303724 20.917965 9.826525 20.917965 10.434681 c
+20.917965 11.053506 20.447418 11.554968 19.805763 11.640323 c
+13.506846 12.461866 12.694082 13.262072 11.646045 19.802414 c
+11.539103 20.431910 11.057861 20.869354 10.448288 20.869354 c
+9.849410 20.869354 9.346780 20.431910 9.250531 19.791744 c
+8.330826 13.251402 7.443202 12.355172 1.112203 11.640323 c
+0.470547 11.565637 0.000000 11.053506 0.000000 10.434681 c
+0.000000 9.826525 0.459853 9.314394 1.112203 9.229038 c
+7.411120 8.354148 8.191800 7.607290 9.250531 1.066948 c
+9.368169 0.437452 9.860105 0.000008 10.448288 0.000008 c
+h
+f
+n
+Q
+q
+1.000000 0.000000 -0.000000 1.000000 28.123089 15.195465 cm
+0.049479 0.742188 0.545395 scn
+11.646045 2.577618 m
+10.903506 2.683247 l
+10.902877 2.678619 l
+11.646045 2.577618 l
+h
+19.795069 10.729038 m
+19.879219 9.983770 l
+19.881781 9.984068 l
+19.795069 10.729038 l
+h
+19.805763 13.140323 m
+19.904661 13.883777 l
+19.902761 13.884024 l
+19.805763 13.140323 l
+h
+11.646045 21.302414 m
+12.386630 21.421087 l
+12.385450 21.428030 l
+11.646045 21.302414 l
+h
+9.250531 21.291744 m
+8.508834 21.403259 l
+8.507838 21.396183 l
+9.250531 21.291744 l
+h
+1.112203 13.140323 m
+1.028052 13.885592 l
+1.025491 13.885293 l
+1.112203 13.140323 l
+h
+1.112203 10.729038 m
+1.215387 11.471931 l
+1.209505 11.472700 l
+1.112203 10.729038 l
+h
+9.250531 2.566948 m
+8.510169 2.447100 l
+8.511623 2.438120 l
+8.513294 2.429176 l
+9.250531 2.566948 l
+h
+10.448288 0.750008 m
+11.450765 0.750008 12.255557 1.493191 12.389213 2.476614 c
+10.902877 2.678619 l
+10.865425 2.403053 10.664957 2.250008 10.448288 2.250008 c
+10.448288 0.750008 l
+h
+12.388570 2.471989 m
+12.620602 4.103085 12.844038 5.334888 13.138243 6.288948 c
+13.429995 7.235054 13.776924 7.858273 14.225985 8.307880 c
+15.140809 9.223818 16.666159 9.620979 19.879219 9.983774 c
+19.710920 11.474303 l
+16.592981 11.122249 14.509018 10.713870 13.164680 9.367895 c
+12.484159 8.686545 12.039045 7.814714 11.704848 6.730967 c
+11.373105 5.655174 11.136688 4.322321 10.903521 2.683245 c
+12.388570 2.471989 l
+h
+19.881781 9.984068 m
+20.873766 10.099530 21.667965 10.918526 21.667965 11.934681 c
+20.167965 11.934681 l
+20.167965 11.734525 19.999683 11.507918 19.708359 11.474010 c
+19.881781 9.984068 l
+h
+21.667965 11.934681 m
+21.667965 12.966555 20.881077 13.753887 19.904659 13.883774 c
+19.706867 12.396872 l
+20.013762 12.356048 20.167965 12.140457 20.167965 11.934681 c
+21.667965 11.934681 l
+h
+19.902761 13.884024 m
+18.330524 14.089085 17.151228 14.287123 16.235826 14.561028 c
+15.331247 14.831694 14.731587 15.163220 14.286853 15.607450 c
+13.840208 16.053589 13.492528 16.670565 13.191763 17.611713 c
+12.888441 18.560867 12.648228 19.788363 12.386598 21.421082 c
+10.905493 21.183746 l
+11.167881 19.546295 11.422276 18.221136 11.762950 17.155106 c
+12.106180 16.081072 12.551881 15.220337 13.226795 14.546188 c
+13.903622 13.870131 14.753702 13.438795 15.805837 13.123979 c
+16.847151 12.812399 18.131544 12.602333 19.708765 12.396622 c
+19.902761 13.884024 l
+h
+12.385450 21.428030 m
+12.223795 22.379583 11.461336 23.119354 10.448288 23.119354 c
+10.448288 21.619354 l
+10.654386 21.619354 10.854410 21.484234 10.906639 21.176800 c
+12.385450 21.428030 l
+h
+10.448288 23.119354 m
+9.455997 23.119354 8.656921 22.387987 8.508867 21.403254 c
+9.992196 21.180237 l
+10.036638 21.475830 10.242823 21.619354 10.448288 21.619354 c
+10.448288 23.119354 l
+h
+8.507838 21.396183 m
+8.278477 19.765110 8.056973 18.533388 7.764218 17.579443 c
+7.473907 16.633463 7.127907 16.010515 6.679636 15.561167 c
+5.766263 14.645599 4.241331 14.248406 1.028053 13.885587 c
+1.196352 12.395059 l
+4.314074 12.747088 6.398453 13.155437 7.741569 14.501781 c
+8.421542 15.183390 8.865580 16.055490 9.198210 17.139366 c
+9.528394 18.215273 9.762733 19.548208 9.993224 21.187307 c
+8.507838 21.396183 l
+h
+1.025491 13.885293 m
+0.028613 13.769261 -0.750000 12.956783 -0.750000 11.934681 c
+0.750000 11.934681 l
+0.750000 12.150229 0.912482 12.362013 1.198914 12.395352 c
+1.025491 13.885293 l
+h
+-0.750000 11.934681 m
+-0.750000 10.922595 0.016880 10.115961 1.014900 9.985377 c
+1.209505 11.472700 l
+0.902826 11.512827 0.750000 11.730454 0.750000 11.934681 c
+-0.750000 11.934681 l
+h
+1.009022 9.986170 m
+2.582546 9.767614 3.760892 9.563175 4.675031 9.286510 c
+5.578484 9.013078 6.174878 8.682938 6.616406 8.241908 c
+7.059544 7.799271 7.404263 7.187467 7.703608 6.250257 c
+8.005574 5.304842 8.245770 4.080437 8.510169 2.447100 c
+9.990894 2.686794 l
+9.725928 4.323629 9.471515 5.645210 9.132493 6.706642 c
+8.790851 7.776280 8.348207 8.632186 7.676467 9.303166 c
+7.003119 9.975756 6.157125 10.405144 5.109545 10.722197 c
+4.072651 11.036015 2.791318 11.253017 1.215384 11.471908 c
+1.009022 9.986170 l
+h
+8.513294 2.429176 m
+8.688872 1.489628 9.455215 0.750008 10.448288 0.750008 c
+10.448288 2.250008 l
+10.264993 2.250008 10.047464 2.385277 9.987769 2.704720 c
+8.513294 2.429176 l
+h
+f
+n
+Q
+q
+1.000000 0.000000 -0.000000 1.000000 72.573807 58.608093 cm
+1.000000 1.000000 1.000000 scn
+8.619835 -0.000011 m
+9.122732 -0.000011 9.537402 0.373419 9.607985 0.897997 c
+10.375565 6.348283 11.107853 7.095141 16.330927 7.690849 c
+16.860292 7.753087 17.257317 8.188755 17.257317 8.695551 c
+17.257317 9.211239 16.869114 9.629124 16.339748 9.700253 c
+11.143145 10.384872 10.472614 11.051710 9.607985 16.501997 c
+9.519756 17.026575 9.122732 17.391113 8.619835 17.391113 c
+8.125761 17.391113 7.711091 17.026575 7.631686 16.493105 c
+6.872929 11.042820 6.140640 10.295961 0.917567 9.700253 c
+0.388201 9.638015 0.000000 9.211239 0.000000 8.695551 c
+0.000000 8.188755 0.379379 7.761978 0.917567 7.690849 c
+6.114172 6.961774 6.758233 6.339392 7.631686 0.889107 c
+7.728737 0.364527 8.134583 -0.000011 8.619835 -0.000011 c
+h
+f
+n
+Q
+q
+1.000000 0.000000 -0.000000 1.000000 72.573807 57.608093 cm
+0.049479 0.742188 0.545395 scn
+9.607985 1.897997 m
+9.112861 1.967726 l
+9.112450 1.964672 l
+9.607985 1.897997 l
+h
+16.330927 8.690849 m
+16.387587 8.194067 l
+16.389311 8.194269 l
+16.330927 8.690849 l
+h
+16.339748 10.700253 m
+16.406334 11.195801 l
+16.405056 11.195970 l
+16.339748 10.700253 l
+h
+9.607985 17.501997 m
+10.101830 17.580339 l
+10.101059 17.584925 l
+9.607985 17.501997 l
+h
+7.631686 17.493105 m
+7.137113 17.566721 l
+7.136462 17.562048 l
+7.631686 17.493105 l
+h
+0.917567 10.700253 m
+0.860907 11.197035 l
+0.859183 11.196833 l
+0.917567 10.700253 l
+h
+0.917567 8.690849 m
+0.987038 9.186015 l
+0.983079 9.186539 l
+0.917567 8.690849 l
+h
+7.631686 1.889107 m
+7.137843 1.809963 l
+7.140029 1.798147 l
+7.631686 1.889107 l
+h
+8.619835 0.499989 m
+9.388696 0.499989 10.001672 1.074373 10.103518 1.831324 c
+9.112450 1.964672 l
+9.073133 1.672462 8.856770 1.499989 8.619835 1.499989 c
+8.619835 0.499989 l
+h
+10.103099 1.828268 m
+10.294624 3.188222 10.480069 4.223436 10.725984 5.028956 c
+10.970345 5.829387 11.264832 6.369568 11.654185 6.763333 c
+12.442908 7.560994 13.744701 7.892640 16.387587 8.194070 c
+16.274267 9.187629 l
+13.694078 8.893350 12.018190 8.553713 10.943106 7.466446 c
+10.400556 6.917747 10.041607 6.212054 9.769561 5.320940 c
+9.499068 4.434915 9.305134 3.332915 9.112870 1.967726 c
+10.103099 1.828268 l
+h
+16.389311 8.194269 m
+17.155991 8.284410 17.757317 8.920855 17.757317 9.695551 c
+16.757317 9.695551 l
+16.757317 9.456655 16.564592 9.221766 16.272543 9.187428 c
+16.389311 8.194269 l
+h
+17.757317 9.695551 m
+17.757317 10.482604 17.162529 11.094193 16.406334 11.195800 c
+16.273165 10.204706 l
+16.575699 10.164056 16.757317 9.939874 16.757317 9.695551 c
+17.757317 9.695551 l
+h
+16.405056 11.195970 m
+15.107601 11.366901 14.126670 11.532858 13.361839 11.764020 c
+12.604449 11.992933 12.090017 12.277006 11.704502 12.665974 c
+11.317406 13.056538 11.022324 13.591100 10.770527 14.386979 c
+10.517109 15.187984 10.317721 16.219311 10.101810 17.580338 c
+9.114160 17.423656 l
+9.330563 16.059540 9.539227 14.963654 9.817105 14.085340 c
+10.096603 13.201900 10.456060 12.505035 10.994250 11.962027 c
+11.534022 11.417421 12.215625 11.065775 13.072525 10.806786 c
+13.921983 10.550046 14.973595 10.375915 16.274443 10.204536 c
+16.405056 11.195970 l
+h
+10.101059 17.584925 m
+9.977288 18.320837 9.395552 18.891113 8.619835 18.891113 c
+8.619835 17.891113 l
+8.849913 17.891113 9.062225 17.732313 9.114909 17.419067 c
+10.101059 17.584925 l
+h
+8.619835 18.891113 m
+7.859531 18.891113 7.250215 18.326427 7.137135 17.566717 c
+8.126238 17.419493 l
+8.171968 17.726725 8.391990 17.891113 8.619835 17.891113 c
+8.619835 18.891113 l
+h
+7.136462 17.562048 m
+6.947139 16.202108 6.763302 15.166948 6.518592 14.361504 c
+6.275430 13.561155 5.981721 13.021152 5.592998 12.627558 c
+4.805452 11.830145 3.503936 11.498478 0.860908 11.197033 c
+0.974226 10.203474 l
+3.554271 10.497736 5.230436 10.837353 6.304493 11.924868 c
+6.846570 12.473737 7.204643 13.179608 7.475406 14.070805 c
+7.744622 14.956905 7.936855 16.058958 8.126910 17.424164 c
+7.136462 17.562048 l
+h
+0.859183 11.196833 m
+0.089259 11.106312 -0.500000 10.475979 -0.500000 9.695551 c
+0.500000 9.695551 l
+0.500000 9.946500 0.687143 10.169718 0.975950 10.203673 c
+0.859183 11.196833 l
+h
+-0.500000 9.695551 m
+-0.500000 8.923503 0.079786 8.297226 0.852054 8.195160 c
+0.983079 9.186539 l
+0.678971 9.226731 0.500000 9.454006 0.500000 9.695551 c
+-0.500000 9.695551 l
+h
+0.848098 8.195699 m
+2.146421 8.013546 3.126409 7.842214 3.889960 7.608789 c
+4.646159 7.377612 5.157835 7.094736 5.540681 6.708459 c
+5.924912 6.320785 6.217544 5.790504 6.468155 4.997945 c
+6.720429 4.200129 6.919805 3.171420 7.137986 1.809986 c
+8.125387 1.968225 l
+7.906841 3.331934 7.698164 4.424881 7.421624 5.299438 c
+7.143422 6.179253 6.786478 6.872063 6.250936 7.412404 c
+5.714010 7.954142 5.035716 8.304206 4.182313 8.565100 c
+3.336262 8.823746 2.287016 9.003614 0.987036 9.186000 c
+0.848098 8.195699 l
+h
+7.140029 1.798147 m
+7.274719 1.070122 7.860904 0.499989 8.619835 0.499989 c
+8.619835 1.499989 l
+8.408263 1.499989 8.182755 1.658932 8.123343 1.980066 c
+7.140029 1.798147 l
+h
+f
+n
+Q
+q
+1.000000 0.000000 -0.000000 1.000000 107.227104 75.129669 cm
+0.049479 0.742188 0.545395 scn
+5.619252 -0.000010 m
+5.947090 -0.000010 6.217412 0.238985 6.263425 0.574716 c
+6.763808 4.062898 7.241186 4.540888 10.646096 4.922141 c
+10.991189 4.961974 11.250008 5.240800 11.250008 5.565150 c
+11.250008 5.895190 10.996941 6.162637 10.651848 6.208159 c
+7.264192 6.646316 6.827075 7.073092 6.263425 10.561275 c
+6.205909 10.897006 5.947090 11.130310 5.619252 11.130310 c
+5.297166 11.130310 5.026845 10.897006 4.975080 10.555585 c
+4.480448 7.067402 4.003070 6.589413 0.598160 6.208159 c
+0.253068 6.168327 0.000000 5.895190 0.000000 5.565150 c
+0.000000 5.240800 0.247316 4.967664 0.598160 4.922141 c
+3.985816 4.455533 4.405678 4.057208 4.975080 0.569025 c
+5.038347 0.233294 5.302918 -0.000010 5.619252 -0.000010 c
+h
+f
+n
+Q
+q
+1.000000 0.000000 -0.000000 1.000000 103.008408 84.868683 cm
+0.049479 0.742188 0.545395 scn
+3.160831 -0.000001 m
+3.345240 -0.000001 3.497297 0.134433 3.523178 0.323282 c
+3.804644 2.285384 4.073170 2.554254 5.988433 2.768708 c
+6.182547 2.791114 6.328133 2.947954 6.328133 3.130401 c
+6.328133 3.316049 6.185782 3.466487 5.991668 3.492094 c
+4.086111 3.738557 3.840232 3.978619 3.523178 5.940721 c
+3.490826 6.129570 3.345240 6.260803 3.160831 6.260803 c
+2.979658 6.260803 2.827601 6.129570 2.798484 5.937521 c
+2.520254 3.975418 2.251728 3.706549 0.336465 3.492094 c
+0.142351 3.469688 0.000000 3.316049 0.000000 3.130401 c
+0.000000 2.947954 0.139115 2.794315 0.336465 2.768708 c
+2.242023 2.506241 2.478195 2.282184 2.798484 0.320081 c
+2.834072 0.131233 2.982893 -0.000001 3.160831 -0.000001 c
+h
+f
+n
+Q
+q
+1.000000 0.000000 -0.000000 1.000000 103.711479 69.564484 cm
+0.049479 0.742188 0.545395 scn
+3.863233 0.000004 m
+4.088622 0.000004 4.274468 0.164312 4.306101 0.395127 c
+4.650115 2.793253 4.978312 3.121871 7.319186 3.383983 c
+7.556437 3.411368 7.734375 3.603061 7.734375 3.826052 c
+7.734375 4.052955 7.560391 4.236824 7.323141 4.268121 c
+4.994129 4.569354 4.693611 4.862762 4.306101 7.260888 c
+4.266560 7.491703 4.088622 7.652100 3.863233 7.652100 c
+3.641799 7.652100 3.455953 7.491703 3.420365 7.256976 c
+3.080306 4.858850 2.752109 4.530232 0.411235 4.268121 c
+0.173984 4.240736 0.000000 4.052955 0.000000 3.826052 c
+0.000000 3.603061 0.170030 3.415280 0.411235 3.383983 c
+2.740246 3.063190 3.028902 2.789341 3.420365 0.391215 c
+3.463861 0.160400 3.645753 0.000004 3.863233 0.000004 c
+h
+f
+n
+Q
+q
+1.000000 0.000000 -0.000000 1.000000 -0.070938 78.607880 cm
+0.049479 0.742188 0.545395 scn
+5.268045 -0.000012 m
+5.575393 -0.000012 5.828820 0.224045 5.871957 0.538792 c
+6.341066 3.808963 6.788608 4.257079 9.980709 4.614503 c
+10.304233 4.651846 10.546875 4.913247 10.546875 5.217325 c
+10.546875 5.526737 10.309625 5.777468 9.986101 5.820146 c
+6.810176 6.230918 6.400379 6.631021 5.871957 9.901192 c
+5.818036 10.215940 5.575393 10.434662 5.268045 10.434662 c
+4.966090 10.434662 4.712663 10.215940 4.664135 9.895857 c
+4.200418 6.625686 3.752876 6.177571 0.560775 5.820146 c
+0.237251 5.782803 0.000000 5.526737 0.000000 5.217325 c
+0.000000 4.913247 0.231859 4.657181 0.560775 4.614503 c
+3.736700 4.177058 4.130321 3.803629 4.664135 0.533457 c
+4.723447 0.218710 4.971482 -0.000012 5.268045 -0.000012 c
+h
+f
+n
+Q
+q
+/E1 gs
+1.000000 0.000000 -0.000000 1.000000 9.772858 88.346924 cm
+0.049479 0.742188 0.545395 scn
+2.458421 -0.000008 m
+2.601850 -0.000008 2.720115 0.104552 2.740246 0.251434 c
+2.959164 1.777514 3.168016 1.986634 4.657663 2.153433 c
+4.808641 2.170859 4.921874 2.292846 4.921874 2.434749 c
+4.921874 2.579142 4.811157 2.696150 4.660179 2.716066 c
+3.178081 2.907759 2.986843 3.094474 2.740246 4.620554 c
+2.715083 4.767436 2.601850 4.869507 2.458421 4.869507 c
+2.317508 4.869507 2.199242 4.767436 2.176596 4.618064 c
+1.960194 3.091985 1.751342 2.882864 0.261695 2.716066 c
+0.110717 2.698639 0.000000 2.579142 0.000000 2.434749 c
+0.000000 2.292846 0.108201 2.173349 0.261695 2.153433 c
+1.743793 1.949291 1.927482 1.775024 2.176596 0.248944 c
+2.204275 0.102062 2.320024 -0.000008 2.458421 -0.000008 c
+h
+f
+n
+Q
+q
+/E2 gs
+1.000000 0.000000 -0.000000 1.000000 13.288479 82.086121 cm
+0.049479 0.742188 0.545395 scn
+2.458421 -0.000008 m
+2.601850 -0.000008 2.720116 0.104552 2.740247 0.251434 c
+2.959164 1.777514 3.168017 1.986634 4.657664 2.153433 c
+4.808642 2.170859 4.921875 2.292846 4.921875 2.434749 c
+4.921875 2.579142 4.811158 2.696150 4.660181 2.716066 c
+3.178082 2.907759 2.986844 3.094474 2.740247 4.620554 c
+2.715084 4.767436 2.601850 4.869507 2.458421 4.869507 c
+2.317509 4.869507 2.199243 4.767436 2.176596 4.618064 c
+1.960195 3.091985 1.751342 2.882864 0.261695 2.716066 c
+0.110717 2.698639 0.000000 2.579142 0.000000 2.434749 c
+0.000000 2.292846 0.108201 2.173349 0.261695 2.153433 c
+1.743793 1.949291 1.927483 1.775024 2.176596 0.248944 c
+2.204276 0.102062 2.320025 -0.000008 2.458421 -0.000008 c
+h
+f
+n
+Q
+
+endstream
+endobj
+
+2 0 obj
+ 17245
+endobj
+
+3 0 obj
+ << /Type /XObject
+ /Length 4 0 R
+ /Group << /Type /Group
+ /S /Transparency
+ >>
+ /Subtype /Form
+ /Resources << >>
+ /BBox [ 0.000000 0.000000 119.000000 93.000000 ]
+ >>
+stream
+/DeviceRGB CS
+/DeviceRGB cs
+q
+1.000000 0.000000 -0.000000 1.000000 0.000000 0.000000 cm
+0.000000 0.000000 0.000000 scn
+0.000000 93.000000 m
+119.000000 93.000000 l
+119.000000 0.000000 l
+0.000000 0.000000 l
+0.000000 93.000000 l
+h
+f
+n
+Q
+
+endstream
+endobj
+
+4 0 obj
+ 234
+endobj
+
+5 0 obj
+ << /XObject << /X1 1 0 R >>
+ /ExtGState << /E1 << /SMask << /Type /Mask
+ /G 3 0 R
+ /S /Alpha
+ >>
+ /Type /ExtGState
+ >> >>
+ >>
+endobj
+
+6 0 obj
+ << /Length 7 0 R >>
+stream
+/DeviceRGB CS
+/DeviceRGB cs
+q
+/E1 gs
+/X1 Do
+Q
+
+endstream
+endobj
+
+7 0 obj
+ 46
+endobj
+
+8 0 obj
+ << /Annots []
+ /Type /Page
+ /MediaBox [ 0.000000 0.000000 119.000000 93.000000 ]
+ /Resources 5 0 R
+ /Contents 6 0 R
+ /Parent 9 0 R
+ >>
+endobj
+
+9 0 obj
+ << /Kids [ 8 0 R ]
+ /Count 1
+ /Type /Pages
+ >>
+endobj
+
+10 0 obj
+ << /Pages 9 0 R
+ /Type /Catalog
+ >>
+endobj
+
+xref
+0 11
+0000000000 65535 f
+0000000010 00000 n
+0000017630 00000 n
+0000017654 00000 n
+0000018137 00000 n
+0000018159 00000 n
+0000018457 00000 n
+0000018559 00000 n
+0000018580 00000 n
+0000018754 00000 n
+0000018828 00000 n
+trailer
+<< /ID [ (some) (id) ]
+ /Root 10 0 R
+ /Size 11
+>>
+startxref
+18888
+%%EOF
\ No newline at end of file
diff --git a/Riot/Assets/Images.xcassets/Authentication/Analytics/AnalyticsLogo.imageset/Contents.json b/Riot/Assets/Images.xcassets/Authentication/Analytics/AnalyticsLogo.imageset/Contents.json
new file mode 100644
index 000000000..7d49fc335
--- /dev/null
+++ b/Riot/Assets/Images.xcassets/Authentication/Analytics/AnalyticsLogo.imageset/Contents.json
@@ -0,0 +1,15 @@
+{
+ "images" : [
+ {
+ "filename" : "AnalyticsLogo.pdf",
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ },
+ "properties" : {
+ "preserves-vector-representation" : true
+ }
+}
diff --git a/Riot/Assets/Images.xcassets/Authentication/Analytics/Contents.json b/Riot/Assets/Images.xcassets/Authentication/Analytics/Contents.json
new file mode 100644
index 000000000..73c00596a
--- /dev/null
+++ b/Riot/Assets/Images.xcassets/Authentication/Analytics/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/Riot/Assets/en.lproj/Vector.strings b/Riot/Assets/en.lproj/Vector.strings
index 768862c3b..119391d9a 100644
--- a/Riot/Assets/en.lproj/Vector.strings
+++ b/Riot/Assets/en.lproj/Vector.strings
@@ -41,6 +41,7 @@
"retry" = "Retry";
"on" = "On";
"off" = "Off";
+"enable" = "Enable";
"cancel" = "Cancel";
"save" = "Save";
"join" = "Join";
@@ -77,6 +78,7 @@
// Accessibility
"accessibility_checkbox_label" = "checkbox";
+"accessibility_button_label" = "button";
// Authentication
"auth_login" = "Log in";
@@ -577,7 +579,7 @@ Tap the + to start adding people.";
"settings_term_conditions" = "Terms & Conditions";
"settings_privacy_policy" = "Privacy Policy";
"settings_third_party_notices" = "Third-party Notices";
-"settings_send_crash_report" = "Send anon crash & usage data";
+"settings_analytics_and_crash_data" = "Send crash and analytics data";
"settings_enable_rageshake" = "Rage shake to report bug";
"settings_clear_cache" = "Clear cache";
@@ -945,8 +947,24 @@ Tap the + to start adding people.";
"no_voip_title" = "Incoming call";
"no_voip" = "%@ is calling you but %@ does not support calls yet.\nYou can ignore this notification and answer the call from another device or you can reject it.";
-// Crash report
-"google_analytics_use_prompt" = "Would you like to help improve %@ by automatically reporting anonymous crash reports and usage data?";
+// Analytics
+"analytics_prompt_title" = "Help improve %@";
+"analytics_prompt_message_new_user" = "Help us identify issues and improve Element by sharing anonymous usage data. To understand how people use multiple devices, we’ll generate a random identifier, shared by your devices.";
+"analytics_prompt_message_upgrade" = "You previously consented to share anonymous usage data with us. Now, to help understand how people use multiple devices, we’ll generate a random identifier, shared by your devices.";
+/* Note: The placeholder is for the contents of analytics_prompt_terms_link_new_user */
+"analytics_prompt_terms_new_user" = "You can read all our terms %@.";
+"analytics_prompt_terms_link_new_user" = "here";
+/* Note: The placeholder is for the contents of analytics_prompt_terms_link_upgrade */
+"analytics_prompt_terms_upgrade" = "Read all our terms %@. Is that OK?";
+"analytics_prompt_terms_link_upgrade" = "here";
+/* Note: The word "don't" is formatted in bold */
+"analytics_prompt_point_1" = "We don't record or profile any account data";
+/* Note: The word "don't" is formatted in bold */
+"analytics_prompt_point_2" = "We don't share information with third parties";
+"analytics_prompt_point_3" = "You can turn this off anytime in settings";
+"analytics_prompt_not_now" = "Not now";
+"analytics_prompt_yes" = "Yes, that's fine";
+"analytics_prompt_stop" = "Stop sharing";
// Crypto
"e2e_enabling_on_app_update" = "%@ now supports end-to-end encryption but you need to log in again to enable it.\n\nYou can do it now or later from the application settings.";
diff --git a/Riot/Assets/third_party_licenses.html b/Riot/Assets/third_party_licenses.html
index b615810b2..ee1a8d284 100644
--- a/Riot/Assets/third_party_licenses.html
+++ b/Riot/Assets/third_party_licenses.html
@@ -1897,6 +1897,34 @@ Library.
SOFTWARE.
+