1. 依存関係(Podfile)
1.1 Podfile が引き続き必要な理由
AKSKit.xcframework/AppsKit.xcframework は、pod としてではなく、バイナリフレームワークとして直接リンクします(§2)。ただし、AppsKit.xcframework のコンパイル済み Swift モジュールは、複数のサードパーティ SDK(Firebase、Google Mobile Ads、IronSource、Adjust、AppsFlyer、AppLovin)のシンボルを参照しています。その大半をアプリから直接呼び出さない場合でも、CocoaPods 経由で依存関係グラフに含める必要があります。含まれていないと、ビルド時にリンクエラーが発生します。
1.2 必須の pod(常に必要)
source 'https://cdn.cocoapods.org'
platform :ios, '15.0'
target 'YourApp' do
use_frameworks!
# Remote Config drives almost all AKS behavior; Analytics/Crashlytics back AKS events and crash reporting
pod 'Firebase/Analytics', '~> 12.15.0'
pod 'Firebase/Crashlytics', '~> 12.15.0'
pod 'Firebase/RemoteConfig', '~> 12.15.0'
pod 'Google-Mobile-Ads-SDK'
# Required by AppsKit.xcframework's compiled swiftinterface — these are transitive
# dependencies of the AKS facade itself, not direct calls you make.
pod 'IronSourceSDK', '~> 9.1.0.0'
pod 'Adjust', '~> 5.4.6'
pod 'AppsFlyerFramework'
pod 'AppsFlyer-AdRevenue'
pod 'AppLovinSDK'
end
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0'
config.build_settings['DEBUG_INFORMATION_FORMAT'] = 'dwarf-with-dsym'
end
end
end上記のバージョンは、動作確認済みのリファレンス実装で現在解決されているものです(Podfile.lock)。内訳は、Firebase/* 12.15.0、最新版に追従するためバージョンを固定していない Google-Mobile-Ads-SDK(推移的依存関係として GoogleUserMessagingPlatform が導入されます)、IronSourceSDK 9.1.0.0、Adjust 5.4.6、AppsFlyerFramework/AppsFlyer-AdRevenue 6.14.3、AppLovinSDK 13.5.0 です。これらは厳密に固定すべきバージョンではなく、動作確認済みの基準として扱ってください。アプリの要件に応じてバージョンを上げても構いませんが、AppsKit.xcframework/AKSKit.xcframework のビルド対象に合わせて、IPHONEOS_DEPLOYMENT_TARGET は 15.0 以上にしてください。
post_installのDEBUG_INFORMATION_FORMAT = 'dwarf-with-dsym'行は、単なる任意の体裁上の設定ではありません。この設定がないと、一部の pod(特に AppLovinSDK)で dSYM が生成されず、クラッシュログのシンボリケーションができなくなります。また、アップロード時に App Store Connect の dSYM 検証に失敗する可能性もあります。
1.3 MMP SDK
Solar Engine は、追加が必要な pod ではありません。すでに AKSKit.xcframework 自体にコンパイルされて組み込まれているため、Podfile には記載されておらず、追加する必要もありません。一方、AppsFlyer と Adjust は、利用側で追加する pod です(上記 §1.2)。これは、AppsKit.xcframework の Swift コードが、これらの SDK の実際のメソッドを直接呼び出すためです(IOSBridgeImp.swift の initializeAppsFlyer/initializeAdjust)。
1.4 広告ネットワーク / メディエーション SDK
リファレンスの Podfile で追加しているのは、Google-Mobile-Ads-SDK、IronSourceSDK、AppLovinSDK のみで、別途「AdMob メディエーションアダプター」の pod は追加していません。AKS ポータルの設定で、ここに記載されていないネットワークに対して AdMob 経由の入札 / ウォーターフォールメディエーションを有効にしている場合は、そのネットワーク専用の CocoaPods アダプター(例:GoogleMobileAdsMediation* pod)が必要かどうかを確認してください。このガイドでは、リファレンスアプリで動作が確認されている構成のみを説明しています。