abbeycode / UnrarKit

Easily read RAR archives on Mac and iOS
BSD 2-Clause "Simplified" License
313 stars 93 forks source link

Including the Apple Privacy manifest file #114

Open karthik-dr opened 10 months ago

karthik-dr commented 10 months ago

Hi, Is there a plan to include the PrivacyInfo.xcprivacy manifest as required by Apple? Reference to Apple docs: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files

Thanks, Karthik

abbeycode commented 9 months ago

I do not have a plan, but UnrarKit does not collect any data at all, so feel free to submit a PR and I'll take a look.

karthik-dr commented 9 months ago

Hi, As per our analysis UnrarKit is using few File timestamp APIs like stat, fstat, lstat APIs for which Apple has mandated to describe use. Can you help us in providing the reason from the below list so that we can create the manifest file.

DDA9.1
Declare this reason to display file timestamps to the person using the device.
Information accessed for this reason, or any derived information, may not be sent off-device.

C617.1
Declare this reason to access the timestamps, size, or other metadata of files inside the app container, app group container, or the app’s CloudKit container.

3B52.1
Declare this reason to access the timestamps, size, or other metadata of files or directories that the user specifically granted access to, such as using a document picker view controller.

0A2A.1
Declare this reason if your third-party SDK is providing a wrapper function around file timestamp API(s) for the app to use, and you only access the file timestamp APIs when the app calls your wrapper function. This reason may only be declared by third-party SDKs. This reason may not be declared if your third-party SDK was created primarily to wrap required reason API(s).
Information accessed for this reason, or any derived information, may not be used for your third-party SDK’s own purposes or sent off-device by your third-party SDK.

Also UnrarKit is using one Disk space APIs statvfs for which we will be needing the reason from the below list.

85F4.1
Declare this reason to display disk space information to the person using the device. Disk space may be displayed in units of information (such as bytes) or units of time combined with a media type (such as minutes of HD video).
Information accessed for this reason, or any derived information, may not be sent off-device. There is an exception that allows the app to send disk space information over the local network to another device operated by the same person only for the purpose of displaying disk space information on that device; this exception only applies if the user has provided explicit permission to send disk space information, and the information may not be sent over the Internet.

E174.1
Declare this reason to check whether there is sufficient disk space to write files, or to check whether the disk space is low so that the app can delete files when the disk space is low. The app must behave differently based on disk space in a way that is observable to users.
Information accessed for this reason, or any derived information, may not be sent off-device. There is an exception that allows the app to avoid downloading files from a server when disk space is insufficient.

7D9E.1
Declare this reason to include disk space information in an optional bug report that the person using the device chooses to submit. The disk space information must be prominently displayed to the person as part of the report.
Information accessed for this reason, or any derived information, may be sent off-device only after the user affirmatively chooses to submit the specific bug report including disk space information, and only for the purpose of investigating or responding to the bug report.