3. プロジェクト設定
3.1 AdMob アプリ ID
有効にしている広告ネットワークに AdMob/GAM が含まれる場合は、ご自身の AdMob アプリ ID を Info.plist に追加してください(アプリ固有の値のため、xcframework 内には同梱できません)。
<key>GADApplicationIdentifier</key>
<string>ca-app-pub-XXXXXXXXXXXXXXXX~YYYYYYYYYY</string>3.2 SKAdNetworkItems
AKS が利用するメディエーション/アトリビューションネットワーク(AppLovin、IronSource、およびそれらに接続する入札パートナー)が ATT の制約下でインストールを正しく計測するには、SKAdNetworkIdentifier のエントリが必要です。リファレンスアプリには、AppLovin、IronSource、Meta などのメディエーションパートナーをカバーする約 48 件のエントリが含まれています。各ネットワークでは随時新しい ID が追加されるため、古いリストをコピーするのではなく、広告ネットワークのダッシュボードから最新のリストを取得してください(AppLovin、IronSource、AdMob がそれぞれ公開しています)。
3.3 App Tracking Transparency(ATT)— 自分で追加実装が必要
注意: リファレンスの組み込み実装には、NSUserTrackingUsageDescription も ATTrackingManager.requestTrackingAuthorization() の呼び出しも含まれていません。AKS は iOS で ATT の許可ダイアログを自動表示しません。AdMob/AppLovin/IronSource のメディエーションや AppsFlyer/Adjust のアトリビューションで IDFA を利用するには、次の両方を自分で追加する必要があります。
<key>NSUserTrackingUsageDescription</key>
<string>Your data will be used to deliver personalized ads.</string>import AppTrackingTransparency
ATTrackingManager.requestTrackingAuthorization { status in
// call this before initializing ads — see §4.4
}利用目的の説明文がない状態で requestTrackingAuthorization を呼び出すと、実行時にクラッシュします。Info.plist のキーを追加せずに呼び出しだけを追加しないでください。また、SDK を組み込んだからといって、これらが設定・実装済みだと考えないでください。
3.4 GoogleService-Info.plist
Firebase の GoogleService-Info.plist を通常の手順でアプリターゲットに追加してください(ソースフォルダにドラッグし、ターゲットメンバーシップを確認します)。AKS 固有の設定はなく、Firebase の標準的なセットアップ手順をそのまま適用できます。
3.5 デプロイメントターゲット
AppsKit.xcframework/AKSKit.xcframework は、最小対応バージョンを iOS 15.0 とし、Swift 5.9(Xcode 15.2 以降)でビルドされています。また、モジュールの安定性を確保するため、BUILD_LIBRARY_FOR_DISTRIBUTION: YES が設定されています。アプリターゲットの IPHONEOS_DEPLOYMENT_TARGET は 15.0 以上に設定してください。Podfile の post_install(§1.2)でも、すべての pod ターゲットが 15.0 に強制設定される点に注意してください。そのため、アプリ側でこれより低いターゲットを指定しても、pods と正常にリンクできません。