Mobile Analytics Events
Document reflects state for app versions:
iOS: March 17, 2026 (commit
a8e722eb)Android: February 24, 2026 (commit
035eea99)
Current Implementation Model
Both apps use an app-side analytics abstraction layer and emit events manually from view models, controllers, and lifecycle code.
Both apps currently route analytics to Firebase when Firebase is enabled.
iOS has a config concept for
ANALYTICS_SOURCE(firebase,segment,none), but only the Firebase analytics plugin is wired in current app code.Android currently wires only the Firebase analytics plugin.
There is no first-class mobile analytics ingestion path wired from the apps into
edx-platformor Aspects today.
Events
App and Pre-Login
Name | Params | Trigger | Action | Verification note |
|---|---|---|---|---|
|
| App launch / app root initialization |
|
|
|
| Logistration landing screen is shown |
| Android upstream now has and calls this event in |
|
| User searches from pre-login discovery flow |
|
|
|
| User opens all-courses flow from logistration |
|
|
|
| Sign-in screen viewed |
|
|
|
| Registration screen viewed |
|
|
|
| User taps Sign Up / Register before opening registration flow |
|
|
|
| User taps Sign In CTA |
|
|
|
| User submits sign-in from sign-in screen |
|
|
|
| User submits account creation |
|
|
|
| User successfully signs in |
|
|
|
| User successfully completes registration |
|
|
|
| User opens forgot-password flow |
|
|
|
| User submits reset-password request |
|
|
|
| Reset-password request succeeds or fails |
|
|
Main Navigation and Discovery
Name | Params | Trigger | Action | Verification note |
|---|---|---|---|---|
|
| User opens Learn / Dashboard tab |
|
|
|
| User opens Discovery tab |
|
|
|
| User opens app-level Dates tab | iOS/Android: missing in upstream | Exact upstream search did not find this app-level Dates event in either mobile repo. Android has course-level dates-tab analytics, not app-level |
|
| User opens app-level Downloads tab |
|
|
|
| User opens Profile tab |
|
|
|
| User opens Programs tab | Android: partial | Android emits |
|
| User opens search from discovery |
|
|
|
| User submits a discovery search |
|
|
|
| User taps a course from discovery results |
|
|
|
| User views course detail / course info |
|
|
|
| User views program info |
|
|
|
| User taps enroll from course detail |
|
|
|
| Enrollment succeeds |
|
|
|
| App warns before opening external link |
| Android upstream now has |
|
| User confirms or cancels external-link warning |
| Android upstream now has |
|
| User taps a course from dashboard |
|
|
Profile
Name | Params | Trigger | Action | Verification note |
|---|---|---|---|---|
|
| Edit profile screen viewed |
|
|
|
| User taps Edit on profile screen |
|
|
|
| User changes limited/full profile mode |
|
|
|
| User saves profile edits |
|
|
|
| User opens video settings |
|
|
|
| User taps contact support |
|
|
|
| User taps FAQ |
|
|
|
| User taps Terms of Use |
|
|
|
| User taps Privacy Policy |
|
|
|
| User taps Cookie Policy |
|
|
|
| User taps Do Not Sell Data / equivalent policy action |
|
|
|
| User opens delete-account flow |
|
|
|
| User confirms account deletion |
|
|
|
| Account deletion succeeds |
|
|
|
| User toggles Wi-Fi-only download setting |
|