Apps Kit SDK logoApps Kit SDK
Dokümantasyon · iOS Entegrasyonu

1. Bağımlılıklar (Podfile)

1.1 Neden hâlâ bir Podfile gerekiyor?

AKSKit.xcframework/AppsKit.xcframework, pod olarak değil, doğrudan ikili framework olarak bağlanır (§2). Ancak AppsKit.xcframework içindeki derlenmiş Swift modülü, çeşitli üçüncü taraf SDK'lardaki (Firebase, Google Mobile Ads, IronSource, Adjust, AppsFlyer, AppLovin) sembollere referans verir. Çoğunu doğrudan çağırmasanız bile bu SDK'ların CocoaPods aracılığıyla bağımlılık grafiğinizde yer alması gerekir; aksi takdirde derlemenin bağlama (link) aşaması başarısız olur.

1.2 Zorunlu pod'lar (her zaman gerekli)

ruby
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

Yukarıdaki sürümler, çalıştığı doğrulanmış bir referans entegrasyonun şu anda çözümlediği sürümlerdir (Podfile.lock): Firebase/* 12.15.0, en güncel sürümü takip etmek için sürümü sabitlenmemiş Google-Mobile-Ads-SDK (geçişli bağımlılık olarak GoogleUserMessagingPlatform paketini de getirir), IronSourceSDK 9.1.0.0, Adjust 5.4.6, AppsFlyerFramework/AppsFlyer-AdRevenue 6.14.3, AppLovinSDK 13.5.0. Bunları zorunlu bir sürüm sabitlemesi olarak değil, çalıştığı doğrulanmış bir başlangıç noktası olarak değerlendirin. Uygulamanızın ihtiyaçlarına göre sürümleri yükseltin, ancak AppsKit.xcframework/AKSKit.xcframework derlenirken kullanılan hedefle uyumlu olması için IPHONEOS_DEPLOYMENT_TARGET değerini 15.0 veya üzerinde tutun.

post_install içindeki DEBUG_INFORMATION_FORMAT = 'dwarf-with-dsym' satırı, isteğe bağlı kozmetik bir ayar değildir. Bu satır olmadan bazı pod'lar (özellikle AppLovinSDK) dSYM dosyaları üretmez. Bu da çökme raporlarında sembol çözümlemeyi bozar ve yükleme sırasında App Store Connect'in dSYM doğrulamasının başarısız olmasına yol açabilir.

1.3 MMP SDK'ları

Solar Engine, eklemeniz gereken bir pod değildir — zaten derlenmiş olarak AKSKit.xcframework içinde bulunur. Bu nedenle Podfile dosyanızda yer almaz ve eklemeniz de gerekmez. Buna karşılık AppsFlyer ve Adjust, uygulama tarafında eklenmesi gereken pod'lardır (yukarıdaki §1.2); çünkü AppsKit.xcframework içindeki Swift kodu, bu SDK'ların gerçek metotlarını doğrudan çağırır (IOSBridgeImp.swift içindeki initializeAppsFlyer/initializeAdjust).

1.4 Reklam ağı / reklam arabuluculuğu (mediation) SDK'ları

Referans Podfile yalnızca Google-Mobile-Ads-SDK, IronSourceSDK ve AppLovinSDK ekler; ayrı bir "AdMob mediation adaptörü" pod'u içermez. AKS portal yapılandırmanız, listelenenler dışındaki ağlar için AdMob üzerinden teklif verme (bidding) / waterfall arabuluculuğunu etkinleştiriyorsa ilgili ağın kendi CocoaPods adaptörüne (ör. bir GoogleMobileAdsMediation* pod'u) ihtiyaç duyup duymadığını kontrol edin. Bu kılavuz yalnızca referans uygulamada çalıştığı doğrulanmış yapılandırmayı belgeler.