1
Extensions / iOS Tracking Transparency
« on: June 29, 2021, 08:34:08 am »
Good day! tommill, developer of Super Fowlst, Dadish, amongst other great games, has created an (attached to this post) extension and some instructions on how to implement it. He helped me out greatly with it and wanted to share it more broadly.
1. Install the extension like and other, and then in your first scene make add this block to a Created event:
Just put a space in the title and msg boxes (or maybe they will be fine left blank, I can't remember) - they don't do anything and are just left over from tommyill modifying the example extension. It's just for initialization.
2. Put pop-up text in the info.plist template file here: /Stencyl/plaf/lime-templates/ios/template/{{app.file}}/{{app.file}}-Info.plist
This is the file included with your build that contains all the permissions your game requires. Paste the below text (or something similar) right before the final </dict> in the document to make it easy on yourself. You can use TextEdit, but be sure you are using Plain Text format to avoid any funny characters being added:
<key>NSUserTrackingUsageDescription</key>
<string>We try to show ads for apps and products that will be most interesting to you based on the apps you use, the device you are on, and the country you are in.</string>
That's it! You will need to have at least Xcode 12 installed on your machine as well.
Side note: For those using Unity, you've probably gotten emails from them telling you to update your info.plist files with missing SKAdNetwork ids. You can find them under the Project Settings of any project. It's long list of networks that, if the user chooses to be tracked, Unity will use to serve ads within Apple's new privacy setup. You can copy/paste this list after or before the pop-up text above in the same info.plist template file. Here's an example of what it would look like:
I'm not sure about the built in AdMob functionality, but the info.plist SDK network names for that would be placed similarly.
Hopefully that all makes sense!
EDIT: One thing I forgot to mention - Keep a backup of the info.plist template somewhere. It will get overwritten by the default template if you update Stencyl.
1. Install the extension like and other, and then in your first scene make add this block to a Created event:
Just put a space in the title and msg boxes (or maybe they will be fine left blank, I can't remember) - they don't do anything and are just left over from tommyill modifying the example extension. It's just for initialization.
2. Put pop-up text in the info.plist template file here: /Stencyl/plaf/lime-templates/ios/template/{{app.file}}/{{app.file}}-Info.plist
This is the file included with your build that contains all the permissions your game requires. Paste the below text (or something similar) right before the final </dict> in the document to make it easy on yourself. You can use TextEdit, but be sure you are using Plain Text format to avoid any funny characters being added:
<key>NSUserTrackingUsageDescription</key>
<string>We try to show ads for apps and products that will be most interesting to you based on the apps you use, the device you are on, and the country you are in.</string>
That's it! You will need to have at least Xcode 12 installed on your machine as well.
Side note: For those using Unity, you've probably gotten emails from them telling you to update your info.plist files with missing SKAdNetwork ids. You can find them under the Project Settings of any project. It's long list of networks that, if the user chooses to be tracked, Unity will use to serve ads within Apple's new privacy setup. You can copy/paste this list after or before the pop-up text above in the same info.plist template file. Here's an example of what it would look like:
I'm not sure about the built in AdMob functionality, but the info.plist SDK network names for that would be placed similarly.
Hopefully that all makes sense!
EDIT: One thing I forgot to mention - Keep a backup of the info.plist template somewhere. It will get overwritten by the default template if you update Stencyl.