iOS アプリが子ども向けの場合、Apple のポリシーに従う必要があります。Adapty SDK を使用している場合、いくつかの簡単な手順でポリシーに準拠した設定を行い、App Store の審査を通過できます。
必要な設定内容
Adapty SDK で以下の収集を無効にする設定が必要です。
- IDFA(広告識別子)
- IPアドレス
また、カスタマーユーザー ID の使い方にも注意が必要です。
<FirstName.LastName> 形式のユーザー ID は、メールアドレスと同様に個人情報の収集と見なされる可能性があります。キッズモードでは、ランダム化または匿名化された識別子(ハッシュ化された ID やデバイス生成の UUID など)を使用することがベストプラクティスです。これによりコンプライアンスを確保できます。
キッズモードを有効にする
Adapty ダッシュボードでの設定
Adapty ダッシュボードでは、IPアドレスの収集を無効にする必要があります。App settings に移動し、Collect users’ IP address の下にある Disable IP address collection をクリックしてください。
モバイルアプリコードの更新
SDK 4.0 以降、Kids Mode は KidsMode という名前の Swift パッケージトレイトになりました。このトレイトを有効にすると、SDK 全体で IDFA と AdSupport がコンパイルから除外されます。通常の Adapty および AdaptyUI モジュールと、通常の import Adapty / import AdaptyUI ステートメントはそのまま使用できます。
KidsMode トレイトは SDK バージョン 4.0 以降で使用できます。SDK 4.0 以降、SDK は Swift Package Manager 経由でのみインストールされます。CocoaPods はサポートされなくなりました。
- Adapty SDKをインストールします。通常通り、Adapty と AdaptyUI モジュールを選択してください。
- Xcode 26.4以降では、プロジェクト設定を開き、Package Dependencies ビューに移動して、AdaptySDK-iOS の依存関係に対して KidsMode トレイトを有効にします。
Xcode 26.4より前のバージョンでは、XcodeプロジェクトのUIからトレイトを有効にすることができません。その場合は、KidsModeトレイトを有効にしてAdaptyに依存するローカルSwiftパッケージを小さく作成し(Package.swiftタブを参照)、アプリターゲットがそのパッケージに依存するようにしてください。
Package.swiftでAdaptyを依存関係として追加する場合は、パッケージ宣言内でトレイトを有効にしてください。トレイトを使用するにはswift-tools-version 6.1以降が必要です。
.package(
url: "https://github.com/adaptyteam/AdaptySDK-iOS.git",
from: "4.0.0",
traits: ["KidsMode"]
)
iOS アプリが子ども向けの場合、Apple のポリシーに従う必要があります。Adapty SDK を使用している場合、いくつかの簡単な手順でポリシーに準拠した設定を行い、アプリストアの審査を通過できます。
必要な設定
Adapty SDK で以下の収集を無効化するよう設定する必要があります:
- IDFA(広告識別子)
- IPアドレス
さらに、カスタムユーザー ID の使い方には注意が必要です。
<FirstName.LastName> 形式のユーザー ID は、メールアドレスと同様に個人情報の収集とみなされる可能性があります。キッズモードでは、ランダム化または匿名化された識別子(ハッシュ化された ID やデバイス生成の UUID など)を使用して、コンプライアンスを確保することがベストプラクティスです。
キッズモードを有効にする
Adapty ダッシュボードでの設定変更
Adapty ダッシュボードでは、IPアドレスの収集を無効にする必要があります。App settings に移動し、Collect users’ IP address の下にある Disable IP address collection をクリックしてください。
モバイルアプリのコードを更新する
ポリシーに準拠するため、ユーザーのIDFAおよびIPアドレスの収集を無効にしてください。
Swift Package Managerを使用している場合、SDKのインストール時にXcodeで Adapty_KidsMode モジュールを選択することでキッズモードを有効にできます。
Xcodeで File -> Add Package Dependency… に進んでください。なお、パッケージ依存関係の追加手順はXcodeのバージョンによって異なる場合があるため、必要に応じてXcodeのドキュメントを参照してください。
-
リポジトリURLを入力します:
https://github.com/adaptyteam/AdaptySDK-iOS.git
-
バージョンを選択し(最新の安定版を推奨)、Add Package をクリックします。
-
Choose Package Products ウィンドウで、必要なモジュールを選択します:
- Adapty_KidsMode(コアモジュール)
- AdaptyUI_KidsMode(オプション - ペイウォールビルダーを使用する場合のみ)
他のパッケージは不要です。
-
Add Package をクリックしてインストールを完了します。
-
コードの中で、import Adapty の代わりに import Adapty_KidsMode、import AdaptyUI の代わりに import AdaptyUI_KidsMode と記述してください:
-
Podfile を更新してください:
post_install セクションがない場合は、以下のコードブロック全体を追加してください。
post_install セクションがある場合は、ハイライトされた行をその中にマージしてください。
def adapty_enable_kids_mode(installer)
installer.pods_project.targets.each do |target|
next unless target.name == 'Adapty'
target.build_configurations.each do |config|
flags = config.build_settings['OTHER_SWIFT_FLAGS'] || '$(inherited)'
flags = flags.join(' ') if flags.is_a?(Array)
config.build_settings['OTHER_SWIFT_FLAGS'] = "#{flags} -DADAPTY_KIDS_MODE"
end
target.frameworks_build_phase.files.dup.each do |bf|
target.frameworks_build_phase.remove_build_file(bf) if bf.display_name.to_s.include?('AdSupport')
end
end
installer.pods_project.save
Dir.glob(File.join(installer.sandbox.root, 'Target Support Files', '**', '*.xcconfig')).each do |xc|
File.write(xc, File.read(xc).gsub(/\s*-framework\s+"?AdSupport"?/, ''))
end
end
post_install do |installer|
# ... keep your existing post_install body (Flutter adds one automatically) ...
adapty_enable_kids_mode(installer) # <-- enable Adapty Kids Mode
end
-
以下のコマンドを実行して変更を適用します:
pod install