1. Зависимости (Podfile)
1.1 Зачем всё ещё нужен Podfile
AKSKit.xcframework/AppsKit.xcframework подключаются напрямую как бинарные фреймворки (§2), а не как pod-зависимости. Однако скомпилированный модуль Swift в AppsKit.xcframework ссылается на символы из нескольких сторонних 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. Рассматривайте их как проверенную рабочую основу, а не как жёстко зафиксированные версии. Обновляйте их с учётом потребностей своего приложения, но сохраняйте IPHONEOS_DEPLOYMENT_TARGET на уровне 15.0 или выше, чтобы соответствовать минимальной версии iOS, для которой собраны AppsKit.xcframework/AKSKit.xcframework.
Строка
DEBUG_INFORMATION_FORMAT = 'dwarf-with-dsym'вpost_install— не необязательная косметическая настройка. Без неё некоторые из этих pod-зависимостей (в частности, AppLovinSDK) не генерируют dSYM, что нарушает символикацию отчётов о сбоях и может привести к ошибке проверки dSYM при загрузке в App Store Connect.
1.3 SDK платформ мобильной атрибуции (MMP)
Solar Engine не нужно добавлять как pod-зависимость — он уже скомпилирован в составе самого AKSKit.xcframework, поэтому вы не найдёте его в своём Podfile (и добавлять его туда не нужно). AppsFlyer и Adjust, напротив, нужно подключать как pod-зависимости в приложении (§1.2 выше), поскольку Swift-код в AppsKit.xcframework напрямую вызывает методы их SDK (initializeAppsFlyer/initializeAdjust в IOSBridgeImp.swift).
1.4 SDK рекламных сетей и медиации
В эталонном Podfile добавлены только Google-Mobile-Ads-SDK, IronSourceSDK и AppLovinSDK — без отдельных pod-зависимостей «адаптеров медиации AdMob». Если в настройках портала AKS включена медиация через AdMob с использованием bidding/waterfall для сетей, не перечисленных выше, проверьте, нужен ли такой сети отдельный адаптер CocoaPods (например, pod-зависимость GoogleMobileAdsMediation*). Это руководство описывает только то, чья работоспособность подтверждена в эталонном приложении.