Monaca Now Supports Cordova iOS 7.1.0: Build Apps Compliant with iOS Privacy Manifest

takuya
The Web Tub
Published in
3 min readMay 2, 2024

Monaca now supports Cordova iOS 7.1.0, allowing developers to build apps that comply with the latest iOS privacy manifest requirements. In this article, we will explain how to use Cordova iOS 7.1.0 in Monaca and how to configure your app to meet the iOS privacy manifest guidelines.

Enabling Cordova iOS 7.1.0

To enable Cordova iOS 7.1.0 in your Monaca project, follow these steps:

Enable Cordova iOS 7.1.0 in the build environment settings.
  1. Navigate to build settings:
    From the project screen, click “Build” in the header menu to access the build settings.
  2. Select build environment settings:
    In the build settings screen, click “Build Environment Settings” to choose the Cordova iOS version.
  3. Choose Cordova iOS 7.1.0:
    In the build environment settings, select “iOS 7.1.0” to build your app for the latest iOS environment.
  4. Save settings:
    After selecting the Cordova iOS version, click the “Save” button at the bottom of the screen to save your settings. You are now ready to use Cordova iOS 7.1.0.

Configuring the Privacy Manifest

To configure the privacy manifest for your app, follow these steps:

1. Open config.xml:
In the Monaca IDE, open the `config.xml` file for your project.

2. Add iOS platform settings:
Inside the `<platform name=”ios”>` tag, add a `<privacy-manifest>` tag to specify your privacy manifest settings.

<platform name="ios">
<privacy-manifest>
<!-- Describe privacy manifest settings here -->
</privacy-manifest>
</platform>

3. Declare tracking usage:
Use the `<key>NSPrivacyTracking</key>` tag to declare whether your app uses tracking.
Set the value to `<true/>` if tracking is used, or `<false/>` if not.

<key>NSPrivacyTracking</key>
<false/>

4. Specify tracking domains:
If tracking is used, list the tracking domains in an array within the `<key>NSPrivacyTrackingDomains</key>` tag. If no tracking is used, specify an empty array `<array/>`.

<key>NSPrivacyTrackingDomains</key>
<array>
<string>example.com</string>
<string>analytics.example.com</string>
</array>

5. Declare used APIs:
In the `<key>NSPrivacyAccessedAPITypes</key>` tag, list the APIs used by your app in an array. If no APIs are used, specify an empty array `<array/>`.

<key>NSPrivacyAccessedAPITypes</key>
<array>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>CA92.1</string>
</array>
</dict>
</array>

6. Declare collected data:
In the `<key>NSPrivacyCollectedDataTypes</key>` tag, list the data types collected by your app in an array. If no data is collected, specify an empty array `<array/>`.

<key>NSPrivacyCollectedDataTypes</key>
<array>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypeDeviceID</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
</array>
</dict>
</array>

7. Save settings:
After editing the `config.xml` file, save your changes. Your privacy manifest settings are now complete.

Important Considerations

  • The privacy manifest must accurately reflect your app’s actual behavior. Providing inaccurate information may result in your app being rejected from the App Store.
  • Apple periodically updates the codes for used APIs and data collection purposes. Refer to the official Apple Developer Documentation for the most up-to-date information.

For details on used APIs, see: Describing use of required reason API | Apple Developer Documentation

For details on collected data, see: Describing data use in privacy manifests | Apple Developer Documentation

--

--