capacitor-community / firebase-analytics

Enable Firebase Analytics for Capacitor Apps
MIT License
162 stars 64 forks source link

[FEATURE]: Add required `Privacy Manifest` file for iOS #178

Open edshkliaruk opened 9 months ago

edshkliaruk commented 9 months ago

Description

Starting with Spring 2024 Apple requires third-party SDKs to add a Privacy Manifest file (similar to the privacy nutrition labels in the store). Apple specifically lists Capacitor as one of the SDKs that must include this manifest otherwise any App that includes it is not allowed to release an update (or new app) to the store.

https://developer.apple.com/support/third-party-SDK-requirements/

Platform(s)

iOS

Additional Context https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_data_use_in_privacy_manifests https://developer.apple.com/videos/play/wwdc2023/10060/

davidkroeg commented 7 months ago

Any news on this? I think in theory it should be enough to bump the Firebase library to its newest version

dtarnawsky commented 7 months ago

Hey @davidkroeg , your best bet is to rebuild and send to Apple and see if it is fixed. The plugin pulls in the latest Cocoapods for firebase analytics here which may already be fixed. It just needs testing to see if that is the case.

davidkroeg commented 7 months ago

Thanks for the hint. I will try that and hope for the best 🤞

davidkroeg commented 7 months ago

@dtarnawsky this worked for me.

So I guess this one can be closed.

eabbott2b commented 7 months ago

Rather than just rebuild, the FirebaseAnalytics pod needs to be updated. If there is a Podfile.lock the pod may be set to an earlier version. In my case, I used the command pod update FirebaseAnalytics to update the FirebaseAnalytics pod and dependencies. Before updating there were no PrivacyInfo.xcprivacy files related to Firebase in the Pods folder. After update (from 10.10.0 to 10.24.0) there were 3 in the FirebaseCore, FirebaseCoreInternal and GoogleUtilities Pods subfolders.

I haven't yet submitted to store to check whether this is all that is required.