Bu hızlı başlangıç kılavuzu, Firebase ile oluşturulmuş bir uygulamadan para kazanmak için AdMob'u kullanmak isteyen yayıncılar ve geliştiriciler içindir. Firebase'i uygulamanıza dahil etmeyi planlamıyorsanız bunun yerine bağımsız AdMob kılavuzunu ziyaret edin.
Henüz yapmadıysanız AdMob, Firebase ve Google Analytics'i birlikte kullanmanın tüm avantajlarını öğrenin.
Bu kılavuzu ilk kez inceliyorsanız, Google Mobile Ads C++ SDK test uygulamasını indirip kullanarak takip etmenizi öneririz.
Sen başlamadan önce
Henüz bir Firebase projeniz ve Firebase uygulamanız yoksa Firebase başlangıç kılavuzunu izleyin: Firebase'i C++ projenize ekleyin .
Firebase projenizde Google Analytics'in etkinleştirildiğinden emin olun:
Yeni bir Firebase projesi oluşturuyorsanız proje oluşturma iş akışı sırasında Google Analytics'i etkinleştirin.
Google Analytics'in etkin olmadığı mevcut bir Firebase projeniz varsa Google Analytics'i uygulamanızın Entegrasyonlar sekmesinden etkinleştirebilirsiniz.
1. Adım: Uygulamanızı AdMob hesabınızda kurun
Uygulamanızın her platform versiyonunu AdMob uygulaması olarak kaydedin.
Uygulamanızın her platform versiyonunu AdMob'a kaydedin . Bu adım, bu kılavuzun ilerleyen bölümlerinde ihtiyaç duyacağınız benzersiz AdMob Uygulama Kimliğine sahip bir AdMob uygulaması oluşturur.
Mobil Reklamlar SDK'sını uygulamanıza eklemeniz istenecektir. Bu göreve ilişkin ayrıntılı talimatları bu kılavuzun ilerleyen kısımlarında bulabilirsiniz.
AdMob uygulamalarınızın her birini ilgili Firebase uygulamasına bağlayın.
Bu adım isteğe bağlıdır ancak önemle tavsiye edilir. Kullanıcı metriklerini etkinleştirmenin ve AdMob uygulamalarınızı Firebase'e bağlamanın yararları hakkında daha fazla bilgi edinin.
Her platform çeşidi için AdMob hesabınızın Uygulamalar kontrol panelinde aşağıdaki iki adımı tamamlayın:
AdMob'un seçilmiş analiz verilerini AdMob hesabınızda işlemesine ve görüntülemesine izin vermek için Kullanıcı Metriklerini etkinleştirin . Bu aynı zamanda AdMob uygulamanızı Firebase'e bağlamanız için de gerekli bir ayardır.
AdMob uygulamanızı mevcut Firebase projenize ve karşılık gelen Firebase uygulamasına bağlayın .
Firebase uygulamanız için girdiğiniz paket adını (Android) veya paket kimliğini (iOS) girdiğinizden emin olun. Firebase uygulamanızın paket adını veya paket kimliğini, uygulamalarınızın uygulamalarınız kartında bulun.
Proje ayarları . >
2. Adım: AdMob Uygulama Kimliğinizi uygulamanıza ekleyin
Android
Aşağıda gösterildiği gibi <meta-data>
etiketini ekleyerek AdMob Uygulama Kimliğinizi uygulamanızın AndroidManifest.xml
dosyasına ekleyin.
<manifest> <application> <!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 --> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ADMOB_APP_ID"/> </application> </manifest>
iOS
Uygulamanızın Info.plist
dosyasına, AdMob Uygulama Kimliğinizin dize değerini içeren bir GADApplicationIdentifier
anahtarı ekleyin.
Bu değişikliği programlı olarak yapabilirsiniz:
<!-- Sample AdMob App ID: ca-app-pub-3940256099942544~1458002511 --> <key>GADApplicationIdentifier</key> <string>ADMOB_APP_ID</string>
Veya bunu özellik listesi düzenleyicisinde düzenleyin:
3. Adım: Google Mobile Ads SDK'sını ekleyin
Google Mobile Ads C++ SDK'sı firebase::gma
ad alanında bulunduğundan, Firebase C++ SDK'sını indirin ve ardından sıkıştırılmış dosyayı istediğiniz bir dizine açın.
Firebase C++ SDK'sı platforma özgü değildir ancak platforma özgü kitaplık yapılandırmaları gerektirir.
Android
Projenizin
gradle.properties
dosyasında sıkıştırılmış SDK'nın konumunu belirtin:systemProp.firebase_cpp_sdk.dir=FULL/PATH/TO/SDK
Projenizin
settings.gradle
dosyasına aşağıdaki içeriği ekleyin:def firebase_cpp_sdk_dir = System.getProperty('firebase_cpp_sdk.dir') gradle.ext.firebase_cpp_sdk_dir = "$firebase_cpp_sdk_dir" includeBuild "$firebase_cpp_sdk_dir"
Modülünüzün (uygulama düzeyi) Gradle dosyasına (genellikle
app/build.gradle
), Google Mobile Ads C++ SDK'sına yönelik kitaplık bağımlılığını içeren aşağıdaki içeriği ekleyin.android.defaultConfig.externalNativeBuild.cmake { arguments "-DFIREBASE_CPP_SDK_DIR=$gradle.firebase_cpp_sdk_dir" } # Add the dependency for the Google Mobile Ads C++ SDK apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle" firebaseCpp.dependencies { gma }
Projenizin
CMakeLists.txt
dosyasına aşağıdaki içeriği ekleyin.# Add Firebase libraries to the target using the function from the SDK. add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL) # Add the Google Mobile Ads C++ SDK. # The Firebase C++ library `firebase_app` is required, # and it must always be listed last. set(firebase_libs firebase_gma firebase_app ) target_link_libraries(${target_name} "${firebase_libs}")
Tüm bağımlılıkların gerekli sürümlere sahip olduğundan emin olmak için uygulamanızı senkronize edin.
Hazırsınız! C++ uygulamanız Google Mobile Ads C++ SDK'sını kullanacak şekilde yapılandırılmıştır.
iOS
Bu bölümdeki adımlar, Google Mobile Ads C++ SDK'sını iOS projenize nasıl ekleyeceğinize dair bir örnektir.
Aşağıdakileri çalıştırarak CocoaPods sürüm 1 veya üstünü edinin:
sudo gem install cocoapods --pre
Sıkıştırılmış SDK'dan Google Mobil Reklamlar bölmesini ekleyin.
Henüz bir Podfile'ınız yoksa bir Pod dosyası oluşturun:
cd YOUR_APP_DIRECTORY
pod init
Pod dosyanıza Google Mobile Ads C++ SDK'sının kapsülünü ekleyin:
pod 'Google-Mobile-Ads-SDK'
Bölmeyi yükleyin, ardından
.xcworkspace
dosyasını Xcode'da açın.pod install
open YOUR_APP.xcworkspace
Firebase C++ SDK'sından aşağıdaki çerçeveleri projeye ekleyin:
-
xcframeworks/firebase.xcframework
-
xcframeworks/firebase_gma.xcframework
-
Hazırsınız! C++ uygulamanız Google Mobile Ads C++ SDK'sını kullanacak şekilde yapılandırılmıştır.
4. Adım: Google Mobile Ads SDK'sını başlatın
Reklamları yüklemeden önce firebase::gma::Initialize()
öğesini çağırarak Mobil Reklamlar SDK'sını başlatın.
Bu çağrı, başlatma tamamlandığında (veya 30 saniyelik bir zaman aşımından sonra) tamamlanan bir firebase::Future
döndürür. Bu yöntemi yalnızca bir kez ve mümkün olduğu kadar erken, ideal olarak uygulama başlatıldığında çağırın.
Burada Initialize()
nasıl çağrılacağına ilişkin bir örnek verilmiştir:
Android
// Initialize the Google Mobile Ads library firebase::InitResult result; Future<AdapterInitializationStatus> future = firebase::gma::Initialize(jni_env, j_activity, &result); if (result != kInitResultSuccess) { // Initialization immediately failed, most likely due to a missing dependency. // Check the device logs for more information. return; } // Monitor the status of the future. // See "Use a Future to monitor the completion status of a method call" below. if (future.status() == firebase::kFutureStatusComplete && future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization completed. } else { // Initialization on-going, or an error has occurred. }
iOS
// Initialize the Google Mobile Ads library. firebase::InitResult result; Future<AdapterInitializationStatus> future = firebase::gma::Initialize(&result); if (result != kInitResultSuccess) { // Initialization immediately failed, most likely due to a missing dependency. // Check the device logs for more information. return; } // Monitor the status of the future. // See "Use a Future to monitor the completion status of a method call" below. if (future.status() == firebase::kFutureStatusComplete && future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization completed. } else { // Initialization on-going, or an error has occurred. }
Bir yöntem çağrısının tamamlanma durumunu izlemek için bir Future
kullanın
Future
eşzamansız yöntem çağrılarınızın tamamlanma durumunu belirlemeniz için bir yol sağlar.
Örneğin, uygulamanız firebase::gma::Initialize()
öğesini çağırdığında, yeni bir firebase::Future
oluşturulur ve döndürülür. Uygulamanız daha sonra başlatmanın ne zaman tamamlandığını belirlemek için Future
status()
yoklayabilir. Tamamlandığında, uygulamanız sonuçta ortaya çıkan AdapterInitializationStatus
değerini elde etmek için result()
öğesini çağırabilir.
Bir Future
döndüren yöntemler, uygulamaların belirli bir eylem için en güncel Future
almak için kullanabileceği karşılık gelen bir "son sonuç" yöntemine sahiptir. Örneğin, firebase::gma::Initialize()
firebase::gma::InitializeLastResult()
adında, uygulamanızın firebase::gma::Initialize()
yapılan son çağrının durumunu kontrol etmek için kullanabileceği bir Future
döndüren karşılık gelen bir yönteme sahiptir: firebase::gma::Initialize()
.
Future
durumu tamamlanmışsa ve hata kodu firebase::gma::kAdErrorCodeNone
ise işlem başarıyla tamamlanmıştır.
Ayrıca bir Future
tamamlandığında çağrılacak geri aramaları da kaydedebilirsiniz. Bazı durumlarda geri arama farklı bir iş parçacığında çalışacağından kodunuzun iş parçacığı açısından güvenli olduğundan emin olun. Bu kod parçacığı geri arama için bir işlev işaretçisi kullanır:
// Registers the OnCompletion callback. user_data is a pointer that is passed verbatim
// to the callback as a void*. This allows you to pass any custom data to the callback
// handler. In this case, the app has no data, so you must pass nullptr.
firebase::gma::InitializeLastResult().OnCompletion(OnCompletionCallback,
/*user_data=*/nullptr);
// The OnCompletion callback function.
static void OnCompletionCallback(
const firebase::Future<AdapterInitializationStatus>& future, void* user_data) {
// Called when the Future is completed for the last call to firebase::gma::Initialize().
// If the error code is firebase::gma::kAdErrorCodeNone,
// then the SDK has been successfully initialized.
if (future.error() == firebase::gma::kAdErrorCodeNone) {
// success!
} else {
// failure.
}
}
5. Adım: Uygulamanızda uygulayacağınız bir reklam biçimi seçin
AdMob çok sayıda farklı reklam biçimi sunar; böylece uygulamanızın kullanıcı deneyimine en uygun biçimi seçebilirsiniz. AdMob belgelerinde ayrıntılı uygulama talimatlarını görüntülemek için bir reklam biçimine ilişkin düğmeyi tıklayın.
Afiş
Cihaz ekranının üstünde veya altında görünen dikdörtgen reklamlar
Banner reklamlar, kullanıcılar uygulamayla etkileşimde bulunurken ekranda kalır ve belirli bir süre sonra otomatik olarak yenilenebilir. Mobil reklamcılıkta yeniyseniz, bunlar başlamak için harika bir yerdir.
Banner reklamları uygulayınGeçiş reklamı
Kullanıcı tarafından kapatılana kadar bir uygulamanın arayüzünü kapsayan tam ekran reklamlar
Geçiş reklamları en iyi şekilde, bir oyunun seviyeleri arasında veya bir görev tamamlandıktan hemen sonra olduğu gibi, uygulamanın yürütülmesi sırasındaki doğal duraklamalarda kullanılır.
Geçiş reklamlarını uygulayınÖdüllendirildi
Kullanıcıları kısa videolar izledikleri ve oynanabilir reklamlar ve anketlerle etkileşimde bulundukları için ödüllendiren reklamlar
Ödüllü (veya "ödül bazlı") reklamlar, ücretsiz oyun oynayan kullanıcıların para kazanmasına yardımcı olabilir.
Diğer ilgi çekici konular
Kullanıcı ölçümlerini ve analiz verilerini görüntüleyin
Mobile Ads SDK, başlatıldıktan sonra uygulamanızdaki analiz etkinliklerini ve kullanıcı özelliklerini otomatik olarak günlüğe kaydetmeye başlar. Bu verileri, uygulamanıza herhangi bir ek kod eklemeden veya herhangi bir reklam uygulamadan görüntüleyebilirsiniz. Bu analiz verilerini burada görebilirsiniz:
AdMob hesabınızın ( Ana Sayfa veya Uygulamalar kontrol paneli) Kullanıcı ölçümleri kartında, ortalama oturum süresi, ARPU ve elde tutma gibi, toplanan analiz verilerinden elde edilen seçilmiş kullanıcı ölçümlerini görüntüleyebilirsiniz.
Firebase konsolunun Analytics kontrol panelinde, toplu istatistikleri ve önemli metriklerin özetlerini görüntüleyebilirsiniz. Google Analytics için Firebase SDK'sını eklerseniz , Firebase konsolunda reklam kampanyaları için dönüşümleri de işaretleyebilir ve özel kitleler oluşturabilirsiniz .
ARPU ve ARPPU metriklerini daha iyi temsil etmek için, bu metriklere ilişkin gelir hesaplamasına ecommerce_purchase
adı verilen özel bir analiz etkinliğinden elde edilen verileri dahil etmek isteyebileceğinizi unutmayın ( nasıl yapılacağını öğrenin ).
(İsteğe bağlı) Google Analytics ve Firebase'in diğer özelliklerini kullanın
Uygulamadan para kazanmayı ve kullanıcı katılımını artırmak için daha fazla fırsat ve özellikten yararlanın:
Google Analytics için Firebase SDK'sını ekleyin ve kullanın
Uygulamanızda özel olay günlüğünü uygulayın.
Özel reklam kampanyalarına ilişkin dönüşümleri işaretleyin.
ARPU ve ARPPU metrikleri için gelir hesaplamasına
ecommerce_purchase
etkinlik verilerini ekleyin .
Daha fazla bilgi edinmek için Google Analytics ve Firebase'i AdMob uygulamalarıyla kullanmaya ilişkin kılavuzu ziyaret edin.
Uygulamanızda diğer Firebase ürünlerini kullanın
Google Analytics için Firebase SDK'sını ekledikten sonra uygulamanızdaki reklamları optimize etmek için diğer Firebase ürünlerini kullanın.
Remote Config, sınırsız günlük aktif kullanıcı için bir uygulama güncellemesi yayınlamadan, ücretsiz olarak uygulamanızın davranışını ve görünümünü değiştirmenize olanak tanır.
A/B Testi, değişiklikleri geniş çapta kullanıma sunmadan önce uygulamanızın kullanıcı arayüzünde, özelliklerinde veya etkileşim kampanyalarında yapılan değişiklikleri test ederek bunların temel ölçümleriniz (gelir ve elde tutma gibi) üzerinde bir etkisi olup olmadığını öğrenmenizi sağlar.