Get User App Tracking Decision in iOS WebView Apps (ATT Framework) 🚀

Man text messaging on mobile phone in privacy of bedroom

At the moment the WKWebView iOS SDK does not require user permission to track via the ATT Framework, so it is the app’s responsibility to decide if WebView, your web app privacy settings, and ATT permissions on iOS can coexist. If your app follows Apple’s guidelines and discloses the data it collects, it should ask the user for permission to track it. If the app complies with GDPR and Apple policies, app developers are forced to use a disappointing combination of consent forms and ATTs consents, resulting in increased user confusion and a poor user experience.

Apple’s policies for apps that collect data from end-users and share it with third parties for tracking and advertising purposes use the AppTrackingTransparency framework. This framework can be used when your app collects data from end-users and shares that data with other companies to track apps and websites.

Apple requires that with iOS 14.5 (April 2021) and the App Tracking Transparency Framework your app should be transparent about the data it uses with third parties to track users in your app. In iOS 14, Apple requires developers to obtain users’ permission to track and access their device advertising identifiers (IDFAs) using the app tracking transparency framework. If you want your iOS application to access IDFA, you should add Apple’s App Tracking Transparency Framework to your app and ask permission to track and access users’ IDFA.

After the relevant app store has reviewed policies on how user data can be used for cross-application tracking, users can opt for Apple’s new App Tracking Transparency Framework. AppTrackingTransparency Framework triggers when a user receives a popup asking for permission to track their app. In order to obtain the consent of the user, the framework asks the user for an app tracking authorization request.

Apple’s new app-tracking transparency allows consumers to opt-out of tracking in an app, meaning their data is no longer available when they use the app. In an attempt to maintain their image as privacy-minded companies, Apple and Google developed a new iOS (iOS 14.5) that implements their new app-tracking transparency system that allows consumers to ask apps they use not to track their activity on the platform. Apple’s new app tracking transparency framework limits the amount of data that can be collected from users, but still, you can monetize your app in different ways, such as by using personalized ads.

Apple’s App Tracking Transparency Initiative, which limits tracking and targeting by advertising agencies when applied to apps, will give Android and iOS app developers a massive lift as advertising revenue shifts to Android. Consumers will be able to disable Apple’s Identifier for Advertisers (IDFA) system, which allows developers to track data about their users at any time, and the new update puts choice at the forefront of the user experience by allowing consumers to opt out of tracking from the moment they use an app. Your app can extrapolate user decisions to track IDFA for other purposes.

Using WebViewGold for iOS, the JavaScript variable trackingDisabled will be either set to true to represent that tracking has been blocked, or false if it hasn’t been. So it’s easy to get the current status:

<a href="user-disable-tracking://">Link</a>
<a href="#" onClick="alert(trackingDisabled);">Show tracking decision</a>

Download WebViewGold for iOS

Sources for this article:

https://www.macrumors.com/2020/10/08/apple-uiwebview-deprecation-deadline-extension/

https://developer.ringpublishing.com/Money/docs/GDPRConsentManager/topics/app-tracking-transparency-ios-sdk.html

https://docs.mparticle.com/developers/sdk/ios/ios14/

https://codecanyon.net/item/ios-webviewgold-urlhtml-to-ios-app-push-messages/10202150

https://dev.to/ionic/building-a-better-web-view-for-mobile-apps-183

https://firebase.google.com/docs/ios/supporting-ios-14

https://engineeringportal.nielsen.com/docs/Template:iOS_Privacy_and_Opt-Out