appsflyer-flutter-plugin icon indicating copy to clipboard operation
appsflyer-flutter-plugin copied to clipboard

iOS privacy manifest

Open yukihiro-numata opened this issue 1 year ago • 5 comments

By Apple's guidelines, you must add an empty file even if you are not collecting anything. ref: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files

yukihiro-numata avatar Feb 22 '24 09:02 yukihiro-numata

Looks like the Apple privacy manifest support has yet to be added to the native iOS SDK. https://support.appsflyer.com/hc/en-us/articles/115001224823-AppsFlyer-iOS-SDK-release-notes

This article says we can add the required reasons directly to the app's manifest until this is added in the SDK. https://support.appsflyer.com/hc/en-us/articles/21677433322641-Privacy-Manifest

AppsFlyer is working on an updated SDK which will include a Privacy Manifest to ease the app developers process of generating their nutrition labels - This SDK update is not mandatory.

If you don't want to wait for the new SDK, you can declare the three required reasons APIs below using the provided code snippet in your Privacy Manifest.

Heech avatar Apr 03 '24 01:04 Heech

It seems like the pages have seen been updated as 6.14 is out on iOS but not yet on Flutter (couldn't find the lines about "If you don't want to wait for the new SDK, you can declare the three required reasons APIs below using the provided code snippet in your Privacy Manifest.") anymore.

Are you sure we can declare the the required reasons ourselves? Per https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api#4278401, it says it has to be defined in the 3rd party SDK

If you use the API in your third-party SDK’s code, then you need to report the API in your third-party SDK’s privacy manifest file. Your third-party SDK can’t rely on the privacy manifest files for apps that link the third-party SDK, or those of other third-party SDKs the app links, to report your third-party SDK’s use of required reasons API.

PS: @yukihiro-numata could you clarify where it is implied that an empty file is needed even there is nothing to declare? I couldn't find it in the docs...

snipd-min avatar Apr 08 '24 14:04 snipd-min

@snipd-min

could you clarify where it is implied that an empty file is needed even there is nothing to declare? I couldn't find it in the docs...

https://github.com/flutter/flutter/issues/139761#issuecomment-1881394943 In the above comment, it states that an empty file is needed even if there is nothing to declare.

However, I've found the comment also states that an empty file is not necessary when there are no declarations required.

If your framework doesn't require a privacy manifest, do nothing. Avoid adding an empty privacy manifest to your framework.

ref: https://developer.apple.com/forums/thread/746481?answerId=782256022#782256022

So, I'm confused and unsure which information is correct.

yukihiro-numata avatar Apr 09 '24 07:04 yukihiro-numata

Hello @al-af it seems that native iOS plugin already has privacy manifest support. Given that the deadline Apple gives for this is end of April, could you please roll out an updated Flutter package so we can start testing it?

Danyalo avatar Apr 17 '24 15:04 Danyalo

Any update on this? When do you plan do integrate the iOS SDK 6.14.0 into the flutter plugin?

BenjaminStoeberl avatar Apr 19 '24 10:04 BenjaminStoeberl

@Danyalo @BenjaminStoeberl A new Flutter SDK version has been released v6.14.2, it's based on Android v6.14.0 and iOS v6.14.2 with the Privacy Manifest.

al-af avatar Apr 21 '24 10:04 al-af