# iOS プライバシーマニフェスト対応

いつもMonacaをご利用いただきありがとうございます。

今回、AppleのApp Storeにおけるプライバシー保護の取り組みにより、2024年5月1日以降、App Storeで公開されるすべてのアプリ&#x306B;**「プライバシーマニフェスト」**&#x3068;呼ばれる新しいファイルの組み込みが必須となりました。

このプライバシーマニフェストには、アプリやそれに組み込まれているサードパーティ製SDKが使用するAPIの種類、使用理由、収集するデータの種類とその目的が記載される必要があります。この変更は、iOSアプリ開発者に直接影響します。

### Monacaのサポートについて

Monacaでは、スムーズにこの新しいアプリ要件に対応できるよう、以下の取り組みを進めています。

1. **Cordovaサポート:**&#x30D7;ライバシーマニフェストに対応するためのプルリクエストをCordovaに提出しました。このプルリクエストが取り込まれ次第、Monacaでも対応できるよう準備を進めます。
2. **プラグインの更新:** Monacaが提供するプラグインについて、新しいアプリ要件に対応できるよう更新
3. **ガイドとドキュメント:**&#x30D7;ライバシーマニフェストの作成方法やAPIの許可理由の宣言方法に関するドキュメントとガイドを充実させます。

### **必要な準備**

* お客様のプロジェクトは、Cordova 12への更新が必要です
* 最新のcordova-ios 7.1.0 への更新が必要です

### **プライバシーマニフェストの設定方法**

`config.xml`ファイルに以下のように記述することで、プライバシーマニフェストを設定できます。

```xml
<platform name="ios">
  <privacy-manifest>
    <key>NSPrivacyTracking</key>
      <!-- トラッキングの有無 <true/>　または <false/> -->
    <key>NSPrivacyTrackingDomains</key>
      <!-- トラッキング先のドメイン 文字列からなる配列で指定 -->
    <key>NSPrivacyAccessedAPITypes</key>
      <!-- 「利用するAPIとその理由」の配列で指定 -->
    <key>NSPrivacyCollectedDataTypes</key>
      <!-- 「収集するデータタイプ、ユーザへのリンクの有無、トラッキングの有無、データ収集の目的」の配列で指定 -->
  </privacy-manifest>
</platform>
```

上記の例では、以下の情報を設定しています。

* `NSPrivacyTracking`: \
  アプリがユーザーのトラッキングを行うかどうかを指定します。`<true/>` または `<false/>` で設定します。
* `NSPrivacyTrackingDomains`: \
  トラッキング先のドメインを文字列の配列で指定します。
* `NSPrivacyAccessedAPITypes`: \
  アプリが利用するAPIとその理由を配列で指定します。
* `NSPrivacyCollectedDataTypes`: \
  アプリが収集するデータタイプ、ユーザへのリンクの有無、トラッキングの有無、データ収集の目的を配列で指定します。

これらの設定により、アプリのプライバシーに関する情報を明示的に宣言することができます。

Appleの公式ドキュメントは以下になります。

利用している特定APIについて:&#x20;

{% embed url="<https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api?language=objc>" %}

収集しているデータについて:&#x20;

{% embed url="<https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_data_use_in_privacy_manifests?language=objc>" %}

## 注意

&#x20; アプリ名に日本語が入っている場合、設定したプライバシーマニフェストがApp Store側で認識出来ない現象が確認されています。プライバシーマニフェストを設定したのに、 Appleの審査でプライバシーマニフェストの不備が指摘された場合、config.xmlで以下のように 設定してください

```xml
<name short="【日本語アプリ名】">【英語アプリ名】</name>
```

Monacaは、お客様がAppleの新しいアプリ要件に円滑に対応できるよう、サポートしてまいります。最新情報は本アナウンスにて随時更新いたします。

ご不明な点がございましたら、お気軽にお問い合わせください。
