This is an automated email from the ASF dual-hosted git repository.

erisu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cordova-plugin-file.git


The following commit(s) were added to refs/heads/master by this push:
     new 8c8e33c  feat(ios): add bundled resources for privacy manifest (#621)
8c8e33c is described below

commit 8c8e33c7efd882326d307c877256a21adcf49f4b
Author: エリス <er...@users.noreply.github.com>
AuthorDate: Mon Apr 22 16:17:20 2024 +0900

    feat(ios): add bundled resources for privacy manifest (#621)
---
 README.md                                    | 14 ++++++++
 plugin.xml                                   |  2 ++
 src/ios/CDVFile.bundle/PrivacyInfo.xcprivacy | 49 ++++++++++++++++++++++++++++
 3 files changed, 65 insertions(+)

diff --git a/README.md b/README.md
index b2fa76b..fa7a2cc 100644
--- a/README.md
+++ b/README.md
@@ -880,3 +880,17 @@ function createDirectory(rootDirEntry) {
 ```
 
 When creating subfolders, you need to create each folder separately as shown 
in the preceding code.
+
+---
+
+## iOS Privacy Manifest
+
+As of May 1, 2024, Apple requires a privacy manifest file to be created for 
apps and third-party SDKs. The purpose of the privacy manifest file is to 
explain the data being collected and the reasons for the required APIs it uses. 
Starting with `cordova-ios@7.1.0`, APIs are available for configuring the 
privacy manifest file from `config.xml`.
+
+This plugin comes pre-bundled with a `PrivacyInfo.xcprivacy` file that 
contains the list of APIs it uses and the reasons for using them.
+
+However, as an app developer, it will be your responsibility to identify 
additional information explaining what your app does with that data.
+
+In this case, you will need to review the "[Describing data use in privacy 
manifests](https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_data_use_in_privacy_manifests)"
 to understand the list of known `NSPrivacyCollectedDataTypes` and 
`NSPrivacyCollectedDataTypePurposes`.
+
+Also, ensure all four keys—`NSPrivacyTracking`, `NSPrivacyTrackingDomains`, 
`NSPrivacyAccessedAPITypes`, and `NSPrivacyCollectedDataTypes`—are defined, 
even if you are not making an addition to the other items. Apple requires all 
to be defined.
diff --git a/plugin.xml b/plugin.xml
index f20b9f4..bb5924d 100644
--- a/plugin.xml
+++ b/plugin.xml
@@ -197,6 +197,8 @@ to config.xml in order for the application to find 
previously stored files.
 
         <framework src="AssetsLibrary.framework" />
         <framework src="MobileCoreServices.framework" />
+
+        <resource-file src="src/ios/CDVFile.bundle" target="CDVFile.bundle" />
     </platform>
 
     <!-- osx -->
diff --git a/src/ios/CDVFile.bundle/PrivacyInfo.xcprivacy 
b/src/ios/CDVFile.bundle/PrivacyInfo.xcprivacy
new file mode 100644
index 0000000..04e614f
--- /dev/null
+++ b/src/ios/CDVFile.bundle/PrivacyInfo.xcprivacy
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+               http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+-->
+<!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>NSPrivacyTrackingDomains</key>
+       <array/>
+       <key>NSPrivacyAccessedAPITypes</key>
+       <array>
+               <dict>
+                       <key>NSPrivacyAccessedAPIType</key>
+                       <string>NSPrivacyAccessedAPICategoryDiskSpace</string>
+                       <key>NSPrivacyAccessedAPITypeReasons</key>
+                       <array>
+                               <string>E174.1</string>
+                       </array>
+               </dict>
+               <dict>
+                       <key>NSPrivacyAccessedAPIType</key>
+                       
<string>NSPrivacyAccessedAPICategoryFileTimestamp</string>
+                       <key>NSPrivacyAccessedAPITypeReasons</key>
+                       <array>
+                               <string>C617.1</string>
+                       </array>
+               </dict>
+       </array>
+       <key>NSPrivacyCollectedDataTypes</key>
+       <array/>
+</dict>
+</plist>


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cordova.apache.org
For additional commands, e-mail: commits-h...@cordova.apache.org

Reply via email to