[RELEASED] iOS 14 IDFA - App Tracking Transparency for Unity

Requirements:

  • Unity 2018 or higher
  • iOS Deployment Target 11.0 or higher
  • XCode 12.0 or higher

Be prepared for iOS 14

Later this year Apple will require your apps/games to request user’s authorization in order to obtain the Identifier for Advertising (IDFA), used to optimize and maximize your Ads revenue.

With this package, you can meet Apple’s requirements just with one line of code. Forget about hard native integrations and huge plugins for such a small task. This plugin also supports iOS lower versions.

Integrate it now and forget about headaches when iOS 14 gets officially released. Give your users enough time to get your app/game updated and ready for iOS 14, so when the time comes, you will be all set up.

>> Get it here <<

How to use?

AppTrackingTransparency.OnAuthorizationRequestDone += OnAuthorizationRequestDone;
AppTrackingTransparency.RequestTrackingAuthorization();

First free installs

For this beautiful Unity community and until I’m allowed, DM me to request a voucher.

Official Website

Issues

Changelog:

2.3.1

  • Fixing Chinese pop-up message while device is set to English

2.3

  • Fixing crash callback was not invoked in main thread
  • Added support for localizing the popup message

2.2

  • Added support for simulator
  • Added SkAdNetwork IDs load from file (json or xml)

2.1

  • Fix iOS 13 support

2.0

  • Support for Unity Editor 2018
  • AppTrackingTransparency.TrackingAuthorizationStatus property to read current authorization status
  • Customizable popup message through Editor Settings (Window/Balaso/App Tracking Transparency/Settings)
  • Support for adding SkAdNetworkIds for SkAdNetwork. This plugin does not include the ability to show ads, you’ll need to use your favorite ads platform SDK.
  • Support for registerAppForAdNetworkAttribution() and updateConversionValue() methods for SkAdNetwork

1.3

  • Enable bitcode

1.2

  • Small fixes for better compatibility

1.1
Compatibility fixes:

  • Unity 2019 or higher
  • iOS Deployment Target 10.0 or higher
  • XCode 12.0 or higher

1.0: Initial release

Is it possible to get it for Unity 2019.4 ?

Hello @mertcankurum ,

It supports Unity version 2019.3.10 or higher, so you can use it in Unity 2019.4. However, if you find any issue, do not hesitate to report it here

Ups sorry, my fault, I was trying to ask it for 2018.4 LTS version.

No, the earliest Unity Editor version supported by the plugin is 2019 onwards. I’m sorry

Can you clarify - does it work on any version of 2019, or is it 2019.3.10+?

Hi @manelizzard - another version question: Is there a “Unity engine” reason for the 2019 requirement?

In other words - do you believe that Unity 2019.x is the minimum requirement for AppTrackingTransparency (irrespective of your plugin)?

I emailed him and he said "It has been developed and tested under Unity 2019.3, but I think it will work under any 2019 version. 2018 is not supported. "

Hello @DaveMExient @andymads ,

Yes, 2019.3 is mandatory. The plugin is using some Unity Editor iOS tools not available (at least by the time being) in Unity 2018.

Feel free to PM and I’ll send you a voucher to test the plugin free of charge.

EDIT: After some investigation, we can say the lowest Unity version supported is 2019.3. Older versions can use the plugin, but will need to configure XCode project manually as explained later in this thread.

The reason of using Unity 2019.3 or higher is to automatically add some required frameworks to the XCode build and the customizable popup message.

These frameworks are:

  • AppTrackingTransparency.framework

  • AdSupport.framework

And the Info.plist has to be modified with the popup message, under the key named NSUserTrackingUsageDescription

You can safely use the plugin with earlier Unity versions if you complete those steps manually. See xcode and plist attached screenshots to see how the XCode project needs to be configured


1 Like

The plugin has a bug which prevents it being used with 2019.2 and likely earlier. I have emailed the author so hopefully he will fix.

Assets/Balaso Software/Runtime/AppTrackingTransparency.cs Line 180 should be:

targetId = project.TargetGuidByName(“Unity-iPhone”);

Thanks @andymads , version 1.2 with the fix is on the way. Hopefully Unity reviews it and makes it available in the following days.

Version 1.2 is now live

Could you be a bro and wrap registerAppForAdNetworkAttribution() or updateConversionValue() while you’re at it? Raise the price $5 bucks and make it worth your while or hell, I’ll send ya a pizza. Then I don’t have to wrap this stuff. This is of course part of the SKAdNetwork, then you’re making it a holistic asset at that point. One stop asset. To be clear, I am talking about: SKAdNetwork | Apple Developer Documentation Thanks @manelizzard !

Hi @manelizzard
Please help me to solve error it’s getting during the build in Xcode
Detail:
Unity v2020.1.0f1
Xcode v11.6
target iOS11

Thanks for the suggestion @natepacyga . Will study the request and see what can we do.

Hello. This plugin can only be built on XCode 12. Please try with XCode 12 Beta 4.

Best,

thanks for reply checking :slight_smile:

Hello @manelizzard , just to be clear (before purchase), if I follow your XCode steps to add everything manually, it will work on Unity 2018.4 ?

I can’t update all my apps to 2019 because I’m using some custom editor tools that were deprecated for 2019

Let’s synch on DM :slight_smile:

1 Like