-
-
Notifications
You must be signed in to change notification settings - Fork 263
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix privacy manifest issues #314
Fix privacy manifest issues #314
Conversation
Including a NSPrivacyCollectedDataTypes entry but specifying empty strings is ... kind of invalid. Instead, you can just specify an empty array for NSPrivacyCollectedDataTypes at the top level. Also, the top level NSPrivacyTracking and NSPrivacyTrackingDomains keys were missing; I've added them with empty values.
When static framework linking is used with Cocoapods, files referenced using `resource` are just directly copied into the main app bundle, potentially clobbering each other or main app resources in the process. i.e., the PrivacyInfo.xcprivacy from ZIPFoundation can overwrite the one for the app itself. The correct way to include PrivacyInfo.xcprivacy is by using `resource_bundles` to create a nested bundle to contain the file. (If dynamic linking is used, this bundle will be nested inside the framework bundle for the pod; if static linking is used, the bundle is nested directly in the main app bundle. In either case, clobbering is avoided.)
I can't find any explicit confirmation of this, but I believe that the purpose of those Xcode privacy reports is specifically to help app developers fill out the "Privacy Nutrition Label" forms, with regard to what data is collected, how, and why. i.e., it's only surfacing details within The details in |
Hi, any chance of this getting merged soon? I currently can't run my app if I create a Privacy file for it as well, as I'm getting the Multiple commands produce error for the PrivacyInfo from ZIPFoundation |
@weichsel Please merge it :) |
Fixes two issues related to the privacy manifest:
Including a NSPrivacyCollectedDataTypes entry but specifying empty strings is incorrect. Instead, you can just specify an empty array for NSPrivacyCollectedDataTypes at the top level. Also, the top level NSPrivacyTracking and NSPrivacyTrackingDomains keys were missing; I've added them with false/empty values as appropriate.
When static framework linking is used with Cocoapods, files referenced using
resource
are just directly copied into the main app bundle, potentially clobbering each other or main app resources in the process. i.e., the PrivacyInfo.xcprivacy from ZIPFoundation can overwrite the one for the app itself.The correct way to include PrivacyInfo.xcprivacy is by using
resource_bundles
to create a nested bundle to contain the file. (If dynamic linking is used, this bundle will be nested inside the framework bundle for the pod; if static linking is used, the bundle is nested directly in the main app bundle. In either case, clobbering is avoided.)(Reference: CocoaPods/CocoaPods#10325)