react-native-file-access icon indicating copy to clipboard operation
react-native-file-access copied to clipboard

[iOS] privacy-related API usage

Open troZee opened this issue 2 years ago • 1 comments

Description

NO MAINTAINER ACTION REQUIRED. PLEASE READ THE APPLE DOCUMENTATION PROVIDED IN THIS ISSUE, IF YOU WOULD LIKE TO USE THIS LIBRARY IN YOUR APP

https://developer.apple.com/news/?id=z6fu1dcu

API used in this library https://github.com/alpha0010/react-native-file-access/blob/master/ios/FileAccess.swift#L136C45-L136C55 https://github.com/alpha0010/react-native-file-access/blob/master/ios/FileAccess.swift#L135

Details

The following APIs for accessing the available disk space require reasons for use. Use the string NSPrivacyAccessedAPICategoryDiskSpace as the value for the NSPrivacyAccessedAPIType key in your NSPrivacyAccessedAPITypes dictionary.

https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api#4278397

<?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>NSPrivacyAccessedAPITypes</key>
  <array>
    <dict>
      <key>NSPrivacyAccessedAPIType</key>
      <string>NSPrivacyAccessedAPICategoryDiskSpace</string>
      <key>NSPrivacyAccessedAPITypeReasons</key>
      <array>
        <string>E174.1</string>
      </array>
    </dict>
  </array>
</dict>
</plist>

Affected API https://developer.apple.com/documentation/foundation/fileattributekey/1410126-systemfreesize https://developer.apple.com/documentation/foundation/fileattributekey/1415888-systemsize

troZee avatar Jul 31 '23 07:07 troZee

Maybe this should be added to the README?

hoshomoh avatar Aug 13 '23 08:08 hoshomoh

actually, this should be provided by this package: see: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_data_use_in_privacy_manifests

Important

Third-party SDKs need to provide their own privacy manifest files that record the types of data they collect. Your app’s privacy manifest file doesn’t need to cover data collected by third-party SDKs that your app links to.

Could a corresponding privacy manifest be included in the repo please?

xamplum avatar Apr 16 '24 09:04 xamplum