devicekit / DeviceKit

DeviceKit is a value-type replacement of UIDevice.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Describing use of required reason API

Gregorian-st opened this issue · comments

According to Apple, "starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code"
As stated here https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api
For each category of required reason API that your app or third-party SDK uses, add a dictionary to the NSPrivacyAccessedAPITypes array in your app or third-party SDK’s privacy manifest file that reports the reasons your app uses the API category. 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.

Could you include PrivacyInfo.xcprivacy file into the package?

It's already included since version 5.2.1, doesn't it work for you? https://github.com/devicekit/DeviceKit/blob/master/Source/PrivacyInfo.xcprivacy

DeviceKit No, it doesn't. May be because the Target Membership for this file is no set to DeviceKit. Also Apple requested to provide the reasons for using API category NSPrivacyAccessedAPICategoryFileTimestamp. I don't use file access in my project, so I suspect DeviceKit Package is using it.

I have the same problem when I generate a xcframework using xcodeproj. As @Gregorian-st the problem seems PrivacyInfo.xcprivacy isn't added as a target on DeviceKit.

Same problem I get Multiple commands produce /PrivacyInfo.xcprivacy when I installed this thru cocoa pods

Fixed by #397 released just now in version 5.2.3