APP_TRACKING
Permission to track the user across apps and websites owned by other companies — advertising attribution, cross-app analytics, ad measurement.
iOS: App Tracking Transparency (
ATTrackingManager), requiringNSUserTrackingUsageDescription. Needs the opt-indev.brewkits:grant-trackingmodule and aGrantTracking.initialize()call: linkingAppTrackingTransparency.frameworkmakes Apple demand that usage-description key, sogrant-coremust not link it for apps that do not track. Same isolation reason asgrant-contacts/grant-calendar/grant-motion(Issues #38, #45).Android: No-op (always GRANTED). Android gates the advertising ID with
com.google.android.gms.permission.AD_ID, which is an install-time permission — auto-granted, with no runtime prompt to show. Reporting GRANTED is honest here: the OS genuinely does not gate this at runtime. Users opt out through system settings, which surfaces as a zeroed advertising ID rather than a permission denial.
Timing matters on iOS. The system only shows the prompt while the app is foreground-active; requesting during launch or from the background returns the current status with no prompt shown, and the ask is silently spent. Request it from a screen the user is actually looking at.