InderKumarRathore/DeviceGuru

Privacy Manifest

lambda123254 opened this issue · 10 comments

In my understanding, libraries which use one of this function listed in Apple Doc should add Privacy Manifest to their library.

image

As far as my concerned, this library use User Defaults for read and write purpose. So any plan about this?
Correct me if I'm wrong, I'm still learning about this as well.

Hi, wondering the same here if this will be addressed and a new version will be released including the manifest?

Added changes into 10.0.6, please check if this works for you. I created new PR to fix some issues while pushing to cocoapods

#123

The xcode generated privacy report states:

Missing an expected key: 'NSPrivacyCollectedDataTypes'

Can you please provide steps to reproduce this

https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_data_use_in_privacy_manifests#4239187

The PrivacyInfo.xcprivacy file should look like this:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>NSPrivacyTracking</key>
  <false/>
  <key>NSPrivacyCollectedDataTypes</key>
  <array/>
  <key>NSPrivacyTrackingDomains</key>
  <array/>
  <key>NSPrivacyAccessedAPITypes</key>
  <array>
    <dict>
      <key>NSPrivacyAccessedAPIType</key>
      <string>NSPrivacyAccessedAPICategoryUserDefaults</string>
      <key>NSPrivacyAccessedAPITypeReasons</key>
      <array>
        <string>CA92.1</string>
      </array>
    </dict>
  </array>
</dict>
</plist>

Hi @InderKumarRathore to reproduce Missing an expected key: 'NSPrivacyCollectedDataTypes' you can generate privacy manifest report via archive, then will shown the result.

I already fix this issues, Thank you 🚀
#124 Update Privacy Manifest Requirements

https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_data_use_in_privacy_manifests#4239187

The PrivacyInfo.xcprivacy file should look like this:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>NSPrivacyTracking</key>
  <false/>
  <key>NSPrivacyCollectedDataTypes</key>
  <array/>
  <key>NSPrivacyTrackingDomains</key>
  <array/>
  <key>NSPrivacyAccessedAPITypes</key>
  <array>
    <dict>
      <key>NSPrivacyAccessedAPIType</key>
      <string>NSPrivacyAccessedAPICategoryUserDefaults</string>
      <key>NSPrivacyAccessedAPITypeReasons</key>
      <array>
        <string>CA92.1</string>
      </array>
    </dict>
  </array>
</dict>
</plist>

Hi @gfoldv ,The provided code only resolves the warning 'Missing an expected key: 'NSPrivacyCollectedDataTypes'. However, if you generate a privacy manifest report, it won't display the DeviceGuru privacy manifest because the data inside the array NSPrivacyCollectedDataTypes needs to be defined, CMIIW.

Missing an expected key: 'NSPrivacyCollectedDataTypes'

Thanks @mrakhal for creating a PR, I have merged it and the new changes should be available in 10.0.7