Geri bildiriminizi paylaşın ve Google Mobile Ads SDK'sı yol haritasının şekillendirilmesine yardımcı olun. 5 Mayıs 2023'te sona ermeden önce 2023 Google Mobile Ads SDK'sı Yıllık Anketi'ne katılın.

Başla

Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.

Bu kılavuz, AdMob aracılığıyla bir iOS uygulamasından para kazanmak isteyen ve Firebase kullanmayan yayıncılar için hazırlanmıştır. Uygulamanıza Firebase'i dahil etmeyi planlıyorsanız (veya kullanmayı düşünüyorsanız) bu kılavuz yerine Firebase ile AdMob sürümünü inceleyin.

Reklamları göstermenin ve gelir elde etmenin ilk adımı Google Mobile Ads SDK'sını bir uygulamaya entegre etmektir. SDK'yı entegre ettikten sonra desteklenen reklam biçimlerinden birini veya daha fazlasını uygulayabilirsiniz.

Ön koşullar

  • Xcode 13.2.1 veya sonraki bir sürümü kullanın
  • iOS 10.0 veya sonraki sürümleri hedefleyin

Mobile Ads SDK'sını içe aktar

CocoaPods (tercih edilen)

SDK'yı bir iOS projesine aktarmanın en basit yolu CocoaPods'u kullanmaktır. Projenizin Podfile dosyasını açın ve bu satırı uygulamanızın hedefine ekleyin:

pod 'Google-Mobile-Ads-SDK'

Ardından komut satırından şunu çalıştırın:

pod install --repo-update

CocoaPods'u yeni kullanmaya başladıysanız Podfile'ları oluşturma ve kullanma hakkında bilgi edinmek için resmi dokümanlarına göz atın.

Swift Package Manager

Google Mobile Ads SDK'sı 9.0.0 sürümünden itibaren Swift Package Manager'ı destekliyor. Swift paketini içe aktarmak için aşağıdaki adımları uygulayın.

  1. Xcode'da, File > Add Packages... (Dosya > Paket Ekle...) seçeneğine giderek Google Mobile Ads Swift Package'ı yükleyin.

  2. Açılan komut isteminde Google Mobile Ads Swift Package GitHub deposunu arayın:

    https://github.com/googleads/swift-package-manager-google-mobile-ads.git
    
  3. Kullanmak istediğiniz Google Mobile Ads Swift Package sürümünü seçin. Yeni projeler için Sonraki Ana Sürüme Kadar sürümünü kullanmanızı öneririz.

İşlemi tamamladığınızda, Xcode paket bağımlılarınızı çözümlemeye ve arka planda indirmeye başlar. Paket bağımlılarını eklemeyle ilgili daha fazla bilgi için Apple'ın makalesine bakın.

Manuel olarak indir

  1. SDK çerçevesini doğrudan indirip sıkıştırmasını açın ve aşağıdaki çerçeveleri Xcode projenize aktarın:

    • GoogleAppMeasurement.xcframework
    • GoogleAppMeasurementIdentitySupport.xcframework
    • GoogleMobileAds.xcframework
    • GoogleUtilities.xcframework
    • nanopb.xcframework
    • PromisesObjC.xcframework
    • UserMessagingPlatform.xcframework
  2. -ObjC bağlayıcı işaretini, projenizin derleme ayarlarında Diğer Bağlayıcı İşaretleri bölümüne ekleyin:

Info.plist dosyanızı güncelleyin

İki anahtar eklemek için uygulamanızın Info.plist dosyasını güncelleyin:

  1. AdMob app ID found in the AdMob UIdizenizin değerine sahip bir GADApplicationIdentifier anahtarı.

  2. Google için SKAdNetworkIdentifier değerlerine sahip bir SKAdNetworkItems anahtarı (cstr6suwn9.skadnetwork) ve bu değerleri Google'a sağlayan üçüncü taraf alıcıları seçin.

Snippet'i tamamla

<key>GADApplicationIdentifier</key>
<string>ca-app-pub-3940256099942544~1458002511</string>
<key>SKAdNetworkItems</key>
<array>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>cstr6suwn9.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>4fzdc2evr5.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>4pfyvq9l8r.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>2fnua5tdw4.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>ydx93a7ass.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>5a6flpkh64.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>p78axxw29g.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>v72qych5uu.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>ludvb6z3bs.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>cp8zw746q7.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>c6k4g5qg8m.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>s39g8k73mm.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3qy4746246.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3sh42y64q3.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>f38h382jlk.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>hs6bdukanm.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>prcb7njmu6.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>v4nxqhlyqp.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>wzmmz9fp6w.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>yclnxrl5pm.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>t38b2kh725.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>7ug5zh24hu.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>9rd848q2bz.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>y5ghdn5j9k.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>n6fk4nfna4.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>v9wttpbfk9.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>n38lu8286q.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>47vhws6wlr.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>kbd757ywx3.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>9t245vhmpl.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>a2p9lx4jpn.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>22mmun2rn5.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>4468km3ulz.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>2u9pt9hc89.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>8s468mfl3y.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>av6w8kgt66.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>klf5c3l5u5.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>ppxm28t8ap.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>424m5254lk.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>ecpz2srf59.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>uw77j35x4d.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>mlmmfzh3r3.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>578prtvx9j.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>4dzt52r2t5.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>gta9lk7p23.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>e5fvkxwrpn.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>8c4e2ghe7u.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>zq492l623r.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3rd42ekr43.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3qcr597p9d.skadnetwork</string>
  </dict>
</array>

Henüz bir AdMob hesabı oluşturmadıysanız ve uygulama kaydettirmediyseniz bu işlemi gerçekleştirmenin tam zamanı.

Mobile Ads SDK'sını ilk kullanıma hazırlayın

Reklamları yüklemeden önce, GADMobileAds.sharedInstance üzerinde startWithCompletionHandler: yöntemini çağırın. Bu, SDK'yı ilk kullanıma hazırlar ve ilk kullanıma hazırlama işlemi tamamlandıktan sonra (veya 30 saniyelik zaman aşımının ardından) bir tamamlama işleyicisi çağırır. Bu işlemin yalnızca bir kez yapılması yeterlidir. En uygun seçenek, uygulamanın kullanıma sunulmasıdır. Mümkün olan en kısa süre içinde startWithCompletionHandler: ile görüşmeniz gerekir.

AppDelegate yönteminizde startWithCompletionHandler: yöntemini nasıl çağıracağınızla ilgili bir örneği burada bulabilirsiniz:

Örnek AppTemsilci.m (alıntı)

Swift

import GoogleMobileAds

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

  func application(_ application: UIApplication,
      didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

    GADMobileAds.sharedInstance().start(completionHandler: nil)

    return true
  }

}

Objective-C

@import GoogleMobileAds;

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

  [GADMobileAds.sharedInstance startWithCompletionHandler:nil];
  return YES;
}

@end

Uyumlulaştırma kullanıyorsanız reklamları yüklemeden önce tamamlama işleyicinin çağrılmasını bekleyebilirsiniz. Böylece tüm uyumlulaştırma bağdaştırıcıları başlatılır.

Reklam biçimi seçin

Mobile Ads SDK'sı artık içe aktarıldı ve başlatıldı. Artık bir reklam uygulamaya hazırsınız. AdMob Bir dizi farklı reklam biçimi sunduğu için uygulamanızın kullanıcı deneyimine en uygun olanı seçebilirsiniz.

Cihaz ekranının üst veya alt kısmında görünen dikdörtgen reklamlar. Banner reklamlar, kullanıcılar uygulamayla etkileşim kurarken ekranda kalır ve belirli bir süre sonra otomatik olarak yenilenebilir. Mobil reklamcılığa yeni başladıysanız başlangıç için mükemmel bir seçenektir.

Banner uygulama

Geçişli

Kullanıcı tarafından kapatılana kadar bir uygulamanın arayüzünü kapsayan tam ekran reklamlar. Bunlar, uygulama yürütme akışındaki doğal duraklamalarda (ör. bir oyunun seviyeleri arasında veya bir görev tamamlandıktan hemen sonra) en iyi şekilde kullanılır.

Geçiş reklamı uygulama

Yerel biçim

Uygulamanızın görünümü ve tarzıyla uyumlu özelleştirilebilir reklamlar. Bu reklamların nasıl ve nereye yerleştirileceğine siz karar verirsiniz. Böylece düzeniniz uygulamanızın tasarımıyla daha tutarlı olur.

Uygulama Native Ads

Ödül olarak verildi

Kısa videoları izleyen ve oynatılabilir reklamlar ile anketlerle etkileşimde bulunan kullanıcıları ödüllendiren reklamlar. Ücretsiz içerik kullanıcıları üzerinden para kazanmak için uygundur.

Ödüllü Reklamları Uygulama Ödüllü reklamları uygulayın (yeni API'ler)