Monaca Docs
  • Monaca
  • Create Your First App
  • Release Notes and Updates
    • Privacy Manifest Requirement for iOS Apps
    • Plugin uses-permission Tag Deduplication Feature
    • iOS Monaca Debugger Discontinuation & Alternative Features
    • Error submitting to iOS App Store (ITMS-90165)
    • Build error in cordova-custom-config
    • Cordova 11 changes
    • Cordova 10 changes
    • Cordova 9 changes
    • New Monaca CLI and Localkit
    • Migration from Cordova to Capacitor
  • Product Guides
    • Monaca Development Overview
    • Monaca Cloud IDE
      • Overview
      • Features in the Monaca Cloud IDE
      • Integrated Terminal
      • Editor Shortcuts
      • Project Dependencies
        • File and Folder Structure
        • JS/CSS Components
        • Cordova Plugins
        • Custom Cordova Plugins
      • Version Control
        • Introduction
        • GitHub Integration
        • Git SSH Integration
      • Monaca CI
        • Overview
        • Deploy Services
        • Deploy to Appetize.io
        • Deploy to DeployGate
        • Deploy to Firebase
      • Build
        • Building for iOS
          • Building an iOS App
          • Build Settings between Monaca and Xcode
        • Building for Android
        • Building for Electron
          • Building on Windows
        • Building for PWA
        • Building for Windows
        • Build Environment Settings
        • Common Build and Application Upload Errors
        • Build History
      • Distribution
        • App Store Distribution
          • App Store Connect Guide
          • iOS App Upload Feature
        • Google Play Distribution
        • Amazon Appstore Distribution
        • Non-market App Distribution
      • Download App Package
      • Tutorial
    • Monaca Localkit
      • Overview
      • Pairing and Debugging
      • Remote Building and Publishing
      • Troubleshooting Guide
      • Tutorial
    • Monaca CLI
      • Overview
      • Monaca CLI Commands
      • Pairing and Debugging
      • Project Dependencies
        • File and Folder Structure
        • JS/JSS Components
        • Cordova Plugins
        • Custom Cordova Plugins
      • Remote Building and Publishing
      • Troubleshooting Guide
      • Tutorial
    • Monaca Debugger
      • Functionalities
      • Installation
        • Monaca Debugger for Android
        • Monaca Debugger for iOS
        • Monaca Debugger for Android Emulator
      • Usage
      • Custom Build Debugger for iOS
      • iOS App Simulator Build
      • Troubleshooting Guide
      • Tutorials
    • Team Dashboard
    • Quick Viewer
    • Migrating from Other Platforms
      • Key Points
      • Cloud IDE preview function settings
      • Migrating from Angular
      • Migrating from Ionic
      • Migrating from React
      • Migrating from Vue
      • Migrating from PhoneGap
        • Key Differences
        • Guide for PhoneGap Build Users
        • Guide for PhoneGap CLI Users
        • Guide for PhoneGap Desktop App Users
      • Migrating from Telerik
  • Build App
    • Build for iOS
      • Creating a Private Key and CSR
      • Creating a Certificate
      • Updating Provisioning Profiles
  • Tutorials
    • Monaca Cloud IDE Tutorial
      • Part 1: Starting a Project
      • Part 2: Running Monaca Debugger with Monaca Cloud IDE
      • Part 3: Building a Monaca App
      • Part 4: Publishing a Monaca App
    • Monaca Localkit Tutorial
      • Part 1: Starting a Project
      • Part 2: Running Monaca Debugger with Monaca Localkit
      • Part 3: Building a Monaca App
      • Part 4: Publishing a Monaca App
    • Monaca CLI Tutorial
      • Part 1: Starting a Project
      • Part 2: Running Monaca Debugger with Monaca CLI
      • Part 3: Building a Monaca App
      • Part 4: Publishing a Monaca App
    • Electron Tutorial
      • How to Use a NPM Package
      • How to Use a Web API
    • Barcode Scanner Plugin
    • Cordova SQLite Storage Plugin
    • Cordova Google Analytics Plugin
    • Cordova Firebase Plugin
    • Cordova In-app Purchase Plugin
    • Cordova AppVersion Plugin
    • Cordova Ionic Keyboard Plugin
    • Cordova Social Sharing Plugin
    • NIFCLOUD mobile backend
    • Phonegap Push Plugin
  • API Reference
    • Monaca API
      • Monaca Cloud & Remote Build API Guide
      • Utilities
    • Core Cordova Plugins
      • Cordova 11.0
        • Battery Status Plugin
        • Camera Plugin
        • Device Plugin
        • Device Motion Plugin
        • Device Orientation Plugin
        • Dialogs Plugin
        • File Plugin
        • Geolocation Plugin
        • InAppBrowser Plugin
        • Media Plugin
        • Media Capture Plugin
        • Network Information Plugin
        • Splashscreen Plugin
        • Vibration Plugin
        • StatusBar Plugin
      • Cordova 10.0
        • Battery Status Plugin
        • Camera Plugin
        • Device Plugin
        • Device Motion Plugin
        • Device Orientation Plugin
        • Dialogs Plugin
        • File Plugin
        • Geolocation Plugin
        • InAppBrowser Plugin
        • Media Plugin
        • Media Capture Plugin
        • Network Information Plugin
        • Splashscreen Plugin
        • Vibration Plugin
        • StatusBar Plugin
        • Whitelist Plugin (Android Only)
      • Cordova 9.0
        • Battery Status Plugin
        • Camera Plugin
        • Contacts Plugin
        • Device Plugin
        • Device Motion Plugin
        • Device Orientation Plugin
        • Dialogs Plugin
        • File Plugin
        • File Transfer Plugin
        • Geolocation Plugin
        • Globalization Plugin
        • InAppBrowser Plugin
        • Media Plugin
        • Media Capture Plugin
        • Network Information Plugin
        • Splashscreen Plugin
        • Vibration Plugin
        • StatusBar Plugin
        • Whitelist Plugin (Android Only)
    • Third-party Cordova Plugins
      • Advanced HTTP Plugin
      • PhoneGap BarcodeScanner Plugin
      • Cordova Custom Config Plugin
      • DatePicker Plugin
      • Share Plugin (Android)
      • WebIntent Plugin (Android)
    • Monaca Power Plugins
      • Monaca HTML5 Resource Encryption
      • Monaca In-App Updater
      • Monaca Secure Storage
      • Barcode Scanner Plugin
      • Android build memory size setting
    • Service Integration
      • Repro
      • AppsFlyer
    • Configuration Files
      • Android
        • Android Configuration
        • config.xml
        • AndroidManifest.xml
      • iOS
        • iOS Configuration
        • config.xml
        • MonacaApp-Info.plist
  • Samples & Tips
    • Sample Apps
      • AdMob
      • Twitter Single Sign-on App
      • Facebook Single Sign-on App
      • Flickr
      • TODO App
      • BirthYear App
      • Break the Bricks
      • Train Catalog App
      • Omikuji Fortune Telling App
      • Clock App
      • Memo Application
      • RSS Reader App
      • Hello World App
    • Tips & Tricks
      • Playing Sound and Music
      • Control the Splash Screen
      • Using Database
  • Features
    • Push Notification
    • SNS Authentication
    • Database
  • FAQ
    • General
    • IDE
    • Build
    • Release
    • Subscription
      • How to Use Activation Code
    • Application
    • Usage
    • Debugger
  • Supported Environments
  • Trouble Shooting
    • Preview Log repeats to reload (Vue packages version mismatch error)
  • Monaca Product Website
  • 日本語
Powered by GitBook
On this page
  • Monaca's Support
  • Required Preparations
  • Setting Up the Privacy Manifest
  • Note

Was this helpful?

  1. Release Notes and Updates

Privacy Manifest Requirement for iOS Apps

Thank you for your continued support and trust in Monaca.

We would like to inform you about a recent development in Apple's App Store privacy protection initiative. As of May 1, 2024, all apps published on the App Store will be required to incorporate a new file called the "Privacy Manifest."

The Privacy Manifest must include information about the types of APIs used by the app and any integrated third-party SDKs, the reasons for their use, the types of data collected, and the purpose of data collection. This change directly impacts iOS app developers.

Monaca's Support

To ensure a smooth transition for our customers in meeting these new app requirements, Monaca is taking the following steps:

  1. Cordova Support: We have submitted a pull request to Cordova to support the Privacy Manifest. As soon as this pull request is merged, we will prepare Monaca to accommodate these changes.

  2. Plugin Updates: We are updating the plugins provided by Monaca to comply with the new app requirements.

  3. Guides and Documentation: We will enhance our documentation and guides on how to create Privacy Manifests and declare API permission reasons.

Required Preparations

  • Your project will need to be updated to Cordova 12.

  • Additionally, an update to the latest cordova-ios will be required.

Setting Up the Privacy Manifest

You can configure the Privacy Manifest by adding the following to your config.xml file:

<platform name="ios">
  <privacy-manifest>
    <key>NSPrivacyTracking</key>
    <!-- Tracking status <true/> or <false/> -->
    <key>NSPrivacyTrackingDomains</key>
    <!-- Array of tracking domains -->
    <key>NSPrivacyAccessedAPITypes</key>
    <!-- Array of "APIs used and their reasons" -->
    <key>NSPrivacyCollectedDataTypes</key>
    <!-- Array of "collected data types, user linking, tracking, and purpose of data collection" -->
  </privacy-manifest>
</platform>

The example above sets the following information:

  • NSPrivacyTracking: Specifies whether the app tracks users. Set to <true/> or <false/>.

  • NSPrivacyTrackingDomains: Specifies the tracking domains as an array of strings.

  • NSPrivacyAccessedAPITypes: Specifies the APIs used by the app and their reasons as an array.

  • NSPrivacyCollectedDataTypes: Specifies the collected data types, user linking, tracking, and purpose of data collection as an array.

These settings allow you to explicitly declare information about your app's privacy practices.

For more information, please refer to Apple's official documentation:

Specific APIs used:

Data collected:

Note

A phenomenon has been confirmed where the App Store cannot recognise the privacy manifest you have set up if the app name contains Japanese characters. Even though the privacy manifest has been set, if the privacy manifest is found to be incomplete during Apple's review, please set it in config.xml as follows. Please set as follows in config.xml.

<name short="[Japanese App Name]">[English App Name]</name>

Monaca is fully committed to supporting our customers in smoothly adapting to Apple's new app requirements. We will keep you updated on the latest information through this announcement.

If you have any questions or concerns, please don't hesitate to reach out to us. Thank you for your continued support and trust in Monaca.

PreviousRelease Notes and UpdatesNextPlugin uses-permission Tag Deduplication Feature

Last updated 1 year ago

Was this helpful?

Describing use of required reason API | Apple Developer DocumentationApple Developer Documentation
Logo
Describing data use in privacy manifests | Apple Developer DocumentationApple Developer Documentation
Logo