React Native SDKのキッズモード

React Nativeアプリが子ども向けの場合、AppleおよびGoogleのポリシーに従う必要があります。Adapty SDKを使用している場合、いくつかの簡単な手順でポリシーに準拠した設定を行い、アプリストアの審査を通過できます。

Important

iOSでは、KidsモードはKidsMode Swiftパッケージトレイトを通じて有効化され、IDFA、AdSupport、AppTrackingTransparencyに関するコードがすべてコンパイル時に除外されます。v4 SDKとXcode 26以降が必要です。トレイトの適用方法は、iOSプロジェクトで使用しているパッケージマネージャーによって異なります。詳細はiOSプロジェクトの更新を参照してください。

何が必要ですか?

以下の収集を無効にするよう、Adapty SDK を設定する必要があります:

また、カスタマーユーザー ID の取り扱いにも注意が必要です。<FirstName.LastName> のような形式のユーザー ID は、メールアドレスと同様に個人情報の収集として扱われます。キッズモードでは、コンプライアンスを確保するために、ランダム化または匿名化された識別子(ハッシュ化 ID やデバイス生成 UUID など)を使用することがベストプラクティスです。

キッズモードを有効にする

Adapty ダッシュボードでの設定変更

Adapty ダッシュボードでは、IPアドレスの収集を無効にする必要があります。App settings に移動し、Collect users’ IP address の下にある Disable IP address collection をクリックしてください。

モバイルアプリのコード変更

ポリシーに準拠するため、Adapty SDK を有効化する際に、ユーザーの IDFA(iOS)、GAID/AAID(Android)、および IP アドレスの収集を無効にしてください。


adapty.activate('YOUR_PUBLIC_SDK_KEY', {
  // Disable IP address collection
  ipAddressCollectionDisabled: true,

  // Disable IDFA collection on iOS
  ios: {
    idfaCollectionDisabled: true,
  },

  // Disable Google Advertising ID collection on Android
  android: {
    adIdCollectionDisabled: true,
  },
});

iOSプロジェクトの更新

App Store子供カテゴリ(またはCOPPA準拠)のためには、ネイティブiOS SDKをKidsMode Swiftパッケージトレイトを使ってビルドする必要があります。このトレイトはIDFA、AdSupport、AppTrackingTransparencyに関するコードをすべてコンパイル時に除外します。この手順にはXcode 26以降が必要です。

Swift Package Managerはどちらの統合方法でもパッケージトレイトを転送できないため、Adapty React Native SDKにはトレイトを自動で適用するツールが用意されています。Install Adapty SDKで説明されているiOSプロジェクトのセットアップ方法に合わせて、適切な方法を選んでください。

Kids Mode が有効になっていることを確認するには、adapty.activate(...) のログ行に kids_mode_enabled: true が表示されているかどうかを確認してください。

Android マニフェストの更新

Note

アプリが子ども専用であり、Android 13(API 33)以上を対象としている場合、Google Play では AD_ID 権限のリクエストが禁止されています。アプリ内の別の SDK(アナリティクス、アトリビューション、広告など)がマニフェストのマージによってこの権限を追加する場合があります。adIdCollectionDisabled を設定すると、Adapty による ID の収集は停止されますが、別の SDK が宣言した権限が削除されるわけではありません。

この権限を削除するには、android/app/src/main/AndroidManifest.xml<manifest> 要素内に以下を追加してください。<manifest> 要素には xmlns:tools="http://schemas.android.com/tools" の宣言が必要です。

<uses-permission
    android:name="com.google.android.gms.permission.AD_ID"
    tools:node="remove" />