Bu kılavuz, AdMob ile bir iOS uygulamalarından para kazanmak isteyen yayıncılara yöneliktir. ve Firebase kullanmayanlar. Uygulamanıza Firebase'i dahil etmeyi planlıyorsanız göz önünde bulundurursanız), Firebase ile AdMob sürümü olarak kullanabilirsiniz.
Google Mobile Ads SDK'sını bir uygulamaya entegre etmek reklam gösterip gelir elde edebilirsiniz. SDK'yı entegre ettikten sonra şunları yapabilirsiniz: bir veya daha fazla Desteklenen reklam biçimlerini inceleyin.
Ön koşullar
- Xcode 15.3 veya sonraki bir sürümü kullanın
- iOS 12.0 veya sonraki sürümleri hedefleme
- Önerilen: AdMob hesabı oluşturma ve uygulamayı kaydedebilirsiniz.
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.
CocoaPods (tercih edilen)
SDK'yı bir iOS projesine aktarmanın en basit yolu CocoaPods'da bulabilirsiniz. Aç projenizin Podfile dosyasına ekleyin ve şu satırı uygulamanızın hedefine ekleyin:
pod 'Google-Mobile-Ads-SDK'
Ardından komut satırında şu komutu çalıştırın:
pod install --repo-update
CocoaPods'u kullanmaya yeni başladıysanız kullanıcıların bilgi için resmi dokümanlar konulu videomuzu izleyin.
Swift Paket Yöneticisi
Google Mobile Ads SDK'sı Swift Package'ı destekler. Yönetici'yi kullanabilirsiniz. Bunları takip et: adımları uygulayın:
Xcode'da şu adrese giderek Google Mobile Ads Swift Paketi'ni yükleyin: Dosya > Paket Ekle...
Görüntülenen istemde Google Mobile Ads Swift Paketini arayın GitHub deposu:
https://github.com/googleads/swift-package-manager-google-mobile-ads.git
Kullanmak istediğiniz Google Mobile Ads Swift Paketi sürümünü seçin. Yeni projeler için Bir Sonraki Ana Sürüm'ü kullanmanızı öneririz.
İşiniz bittiğinde Xcode paket bağımlılıklarınızı çözümlemeye başlar ve arka planda indirir. Paket ekleme hakkında daha fazla bilgi için için Apple'ın makalesine bakın.
Manuel indirme
Google Mobile Ads SDK'sını indirin ve
Embed & Sign
şu çerçeveleri Xcode projenize ekleyin:GoogleMobileAds.xcframework
UserMessagingPlatform.xcframework
Projenizin derleme ayarlarında:
/usr/lib/swift
yolunu Runpath Arama Yolları'na ekleyin.-ObjC
bağlayıcı işaretini Diğer Bağlayıcı İşaretleri'ne ekleyin.
Info.plist dosyanızı güncelleyin
İki anahtar eklemek için uygulamanızın Info.plist
dosyasını güncelleyin:
Dize değerine sahip bir
GADApplicationIdentifier
anahtarı: AdMob app ID found in the AdMob UI.Google için
SKAdNetworkIdentifier
değerlerine sahip birSKAdNetworkItems
anahtarı (cstr6suwn9.skadnetwork
) ve belirli üçüncü taraf alıcılar Google'a iletildi.
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>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>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>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>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>ppxm28t8ap.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>uw77j35x4d.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>pwa73g5rt2.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>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>3qcr597p9d.skadnetwork</string> </dict> </array>
Henüz AdMob hesabı oluşturmadıysanız hesap ve bir uygulamasını kullanmayı da başardık. sahip olmanız gerekir.
Gerçek bir uygulamada, örnek uygulama kimliğini gerçek AdMob uygulama kimliği. Örnek kimliğini aşağıdaki durumlarda kullanabilirsiniz: bir Hello World uygulamasındaki SDK ile deneme yapıyorsunuz.
Mobile Ads SDK'sını başlatma
Reklamları yüklemeden öncestartWithCompletionHandler:
GADMobileAds.sharedInstance
,
Bu kod, SDK'yı başlatır ve bir tamamlama işleyiciyi bir kez geri çağırır
başlatma tamamlandığında (veya 30 saniyelik zaman aşımından sonra). Bu yalnızca
genellikle uygulama lansmanında yapılır. startWithCompletionHandler:
adlı işletmeyi aramalısınız
mümkün olduğunca erken gönderin.
startWithCompletionHandler:
yönteminin nasıl çağrılacağını
sizin AppDelegate
:
Örnek AppDelegate (alıntı)
Swift
import GoogleMobileAds
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
GADMobileAds.sharedInstance().start(completionHandler: nil)
return true
}
}
SwiftUI
import GoogleMobileAds
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
GADMobileAds.sharedInstance().start(completionHandler: nil)
return true
}
}
@main
struct YourApp: App {
// To handle app delegate callbacks in an app that uses the SwiftUI lifecycle,
// you must create an application delegate and attach it to your `App` struct
// using `UIApplicationDelegateAdaptor`.
@UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate
var body: some Scene {
WindowGroup {
NavigationView {
ContentView()
}
}
}
}
Objective-C
@import GoogleMobileAds;
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[GADMobileAds.sharedInstance startWithCompletionHandler:nil];
return YES;
}
@end
Reklam biçimi seçin
Mobile Ads SDK'sı içe aktarılıp başlatıldı. Artık şunları yapabilirsiniz: reklam uygulayabilirsiniz. AdMob , uygulamanızın farklı reklam biçimleri gösterir, böylece uygulamanızın kullanıcılarına en uygun olanı seçebilirsiniz sunmaktır.
SwiftUI geliştiricileri için SwiftUI rehberini inceleyin.
Banner
Banner reklam birimleri, uygulamanın bir bölümünü kaplayan dikdörtgen reklamlar kullanır. Belirli bir süre sonra otomatik olarak yenilenebilirler. Bunun anlamı şudur: Kullanıcılar, aynı reklam yayınında kalsalar bile düzenli aralıklarla yeni bir reklam görüntüler ekleyebilirsiniz. Ayrıca, uygulanması en basit reklam biçimidir.
Geçiş reklamı
Geçiş reklam birimleri, uygulamanızda tam sayfa reklamlar gösterir. Doğal bir yere yerleştirin Seviye tamamlandıktan sonra olduğu gibi uygulamanızın arayüzündeki aralar ve geçişler en iyi uygulamaları paylaşacağız.
Yerel biçim
Doğal reklamlar, başlık ve resim gibi öğelerin nasıl özelleştirileceğini harekete geçirici mesajlar, uygulamalarınızda sunulur. Reklamın stilini kendiniz belirleyerek şunları yapabilirsiniz: göze çarpmayan, doğal ve göze batmayan reklam sunumları hazırlayın. sunmaktır.
Ödüllü
Ödüllü reklam birimleri, kullanıcıların aşağıdaki işlemleri yapmak için oyun oynamasına, anket yanıtlamasına veya video izlemesine olanak tanır. Jeton, ekstra can veya puan gibi uygulama içi ödüller kazanma Faturalandırma hesabınızdaki ücretleri takip etmek için Farklı reklam birimleri için farklı ödüller belirleyin ve ödül değerlerini ve kullanıcının aldığı öğe sayısı.
Ödüllü geçiş reklamı
Ödüllü geçiş reklamı, bir teşvikle sunulan yeni bir reklam biçimidir. otomatik olarak görünen reklamlar için jeton veya ekstra can gibi ödüller sunma doğal uygulama geçişleri sırasında.
Ödüllü reklamların aksine kullanıcıların ödüllü geçiş reklamı.
Ödüllü reklamlardaki etkinleştirme istemi yerine ödüllü geçiş reklamlarında giriş ekranında ödül duyurur ve kullanıcılara kapsam dışında kalmayı seçmeleri için ve bunu yapmak istiyorlar.
Ö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 uygulamasını indirin. Reklam, yükleme ekranının üzerinde görünür.