Bu kılavuz, AdMob ile iOS uygulamasından para kazanmak isteyen ve Firebase kullanmayan yayıncılara yöneliktir. Uygulamanıza Firebase'i dahil etmeyi planlıyorsanız (veya bunu düşünüyorsanız) bu kılavuzun Firebase ile AdMob sürümüne bakın.
Google Mobile Ads SDK'sını uygulamaya entegre etmek, reklam göstermenin ve gelir elde etmenin ilk adımıdır. SDK'yı entegre ettikten sonra desteklenen reklam biçimlerinden birini veya daha fazlasını uygulamaya başlayabilirsiniz.
Ön koşullar
- Xcode 16.0 veya sonraki bir sürümü kullanın
- iOS 12.0 veya sonraki sürümleri hedefleyin
- Önerilen: AdMob hesabı oluşturun ve uygulama kaydedin.
Mobile Ads SDK'sını içe aktarma
Google Mobile Ads SDK'sını içe aktarmak için aşağıdaki yöntemlerden birini kullanın.
Swift Package Manager
Projenize paket bağımlılığı eklemek için aşağıdaki adımları uygulayın:
Xcode'da Dosya > Paket Bağımlılıkları Ekle...'ye giderek Google Mobil Reklamlar Swift paketini yükleyin.
Görünen istemde, Google Mobile Ads Swift Package GitHub deposunu arayın:
https://github.com/googleads/swift-package-manager-google-mobile-ads.git
Google Mobile Ads Swift Paketi'nin kullanmak istediğiniz sürümünü seçin. Yeni projeler için Sonraki Büyük Sürüme Kadar seçeneğini kullanmanızı öneririz.
CocoaPods
Devam etmeden önce, Pod dosyalarını oluşturma ve kullanma hakkında bilgi edinmek için CocoaPods'u kullanma başlıklı makaleyi inceleyin.
CocoaPods'u kullanmak için aşağıdaki adımları uygulayın:
Projenizin Podfile dosyasını açın ve uygulamanızın
target
derleme yapılandırmasına şu satırı ekleyin:pod 'Google-Mobile-Ads-SDK'
Terminalde şu komutu çalıştırın:
pod install --repo-update
Manuel indirme
Google Mobile Ads SDK'sını indirin ve
Embed & Sign
aşağıdaki çerçeveleri Xcode projenize ekleyin:GoogleMobileAds.xcframework
UserMessagingPlatform.xcframework
Projenizin derleme ayarlarında:
/usr/lib/swift
yolunu Çalışma Yolu Arama Yolları'na ekleyin.-ObjC
bağlayıcı işaretini Diğer Bağlayıcı İşaretleri'ne ekleyin.
Info.plist dosyanızı güncelleme
Uygulamanızın Info.plist
dosyasını güncelleyerek iki anahtar ekleyin:
AdMob kullanıcı arayüzünde bulunan AdMob uygulama kimliğinizin dize değerine sahip bir
GADApplicationIdentifier
anahtarı.Google (
cstr6suwn9.skadnetwork
) ve bu değerleri Google'a sağlayan belirli üçüncü taraf alıcılar içinSKAdNetworkIdentifier
değerleri içeren birSKAdNetworkItems
anahtarı.
Snippet'i tamamlama
<key>GADApplicationIdentifier</key> <!-- Sample AdMob app ID: ca-app-pub-3940256099942544~1458002511 --> <string>SAMPLE_APP_ID</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>2fnua5tdw4.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>ydx93a7ass.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>3sh42y64q3.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>f38h382jlk.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>hs6bdukanm.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>mlmmfzh3r3.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>su67r6k2v3.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>gta9lk7p23.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>vutu7akeur.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>y5ghdn5j9k.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>44jx6755aq.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>k674qkevps.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>klf5c3l5u5.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>ppxm28t8ap.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>kbmxgpxpgc.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>uw77j35x4d.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>tl55sbb4fm.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>c3frkrj4fj.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>3rd42ekr43.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>97r2b46745.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>3qcr597p9d.skadnetwork</string> </dict> </array>
SAMPLE_APP_ID yerine AdMob uygulama kimliğinizi yazın. Test sırasında önceki örnekte gösterilen örnek uygulama kimliğini kullanın.
Henüz AdMob hesabı oluşturmadıysanız ve uygulama kaydettirmediyseniz bunu yapmak için en uygun zaman şimdi.
Mobile Ads SDK'sını ilk kullanıma hazırlayın
Reklamları yüklemeden önce GADMobileAds.sharedInstance
üzerinde start()
yöntemini çağırın. Bu yöntem, SDK'yı başlatır 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. Mümkün olduğunca erken start()
numaralı telefonu arayın.
Swift
// Initialize the Google Mobile Ads SDK.
MobileAds.shared.start()
SwiftUI
// Initialize the Google Mobile Ads SDK.
MobileAds.shared.start()
Objective-C
// Initialize the Google Mobile Ads SDK.
[GADMobileAds.sharedInstance startWithCompletionHandler:nil];
Reklam biçimi seçme
Mobile Ads SDK'sı içe aktarıldı ve başlatıldı. Artık reklam uygulamaya hazırsınız. AdMob, uygulamanızın kullanıcı deneyimine en uygun olanı seçebilmeniz için çeşitli reklam biçimleri sunar.
Banner
Banner reklam birimleri, uygulama düzeninin bir kısmını kaplayan dikdörtgen reklamlar gösterir. Belirli bir süre sonra otomatik olarak yenilenebilirler. Bu, uygulamanızda aynı ekranda kalsalar bile kullanıcıların düzenli aralıklarla yeni bir reklam görecekleri anlamına gelir. Ayrıca, uygulanması en basit reklam biçimidir.
Geçiş reklamı
Geçiş reklamı birimleri, uygulamanızda tam sayfa reklamlar gösterir. Bu reklam birimlerini uygulamanızın arayüzündeki doğal bekleme ve geçiş alanlarına yerleştirin (ör. bir oyun uygulamasında seviye atlanmasından sonra).
Yerel biçim
Yerel reklamlar, başlık ve harekete geçirici mesaj gibi öğelerin uygulamalarınızda sunulma şeklini özelleştirebileceğiniz reklamlardır. Reklamı kendiniz tasarlayarak zengin bir kullanıcı deneyimine katkıda bulunabilecek doğal ve rahatsız edici olmayan reklam sunumları oluşturabilirsiniz.
Ödüllü
Ödüllü reklam birimlerinde kullanıcılar jeton, ek can veya puan toplamak için oyun oynayabilir, anket yapabilir veya video izleyebilir. Farklı reklam birimleri için farklı ödüller belirleyebilir ve kullanıcının alacağı ödül değerlerini ve öğeleri belirtebilirsiniz.
Ödüllü geçiş reklamı
Ödüllü geçiş reklamı, doğal uygulama geçişleri sırasında otomatik olarak görünen reklamlar için para veya ek can gibi ödüller sunmanızı sağlayan yeni ve teşvik edici bir reklam biçimidir.
Ödüllü reklamların aksine kullanıcıların ödüllü geçiş reklamı görüntülemeyi etkinleştirmesi gerekmez.
Ödüllü reklamlardaki etkinleştirme istemi yerine ödüllü geçiş reklamlarında ödülü bildiren ve kullanıcılara dilediklerinde bu seçeneği devre dışı bırakma şansı sunan bir tanıtım ekranı gerekir.
Ödüllü geçiş reklamlarını uygulama
Uygulama açılışı
Uygulama açılışı, kullanıcılar uygulamanızı açtığında veya uygulamanıza geri döndüğünde görünen bir reklam biçimidir. Reklam, yükleme ekranının üzerinde gösterilir.
Uygulama açılış reklamlarını uygulama