Banner reklamlar, bir uygulamanın düzeninde cihaz ekranının üst veya alt kısmında bir yer kaplar. Kullanıcılar uygulamayla etkileşim kurarken ekran üzerinde kalmaya devam eder ve belirli bir süre sonra otomatik olarak yenilenebilir. Mobil reklamcılığa yeni başladıysanız bu reklamlar harika bir başlangıç noktasıdır. Örnek olay.
Ön koşullar
- Başlayın bölümünü tamamlayın.
- (Yalnızca Android) JNI
jobject
referanslarıyla çalışma konusunda deneyimli olmanız (bkz. Android JNI ipuçları).
Her zaman test reklamlarıyla test yapın
Uygulamalarınızı oluşturup test ederken canlı yayınlanan üretim reklamları yerine test reklamlarını kullandığınızdan emin olun. Bu işlemi yapmazsanız hesabınız askıya alınabilir.
Test reklamlarını yüklemenin en kolay yolu, banner'lar için cihaz platformuna göre değişen özel test reklam birimi kimliğimizi kullanmaktır:
- Android:
ca-app-pub-3940256099942544/6300978111
- iOS:
ca-app-pub-3940256099942544/2934735716
Bu reklam birimi kimlikleri, her istek için test reklamları döndürecek şekilde özel olarak yapılandırılmıştır. Kodlama, test etme ve hata ayıklama sırasında bu kimlikleri kendi uygulamalarınızda kullanabilirsiniz. Uygulamanızı yayınlamadan önce bu kimliği kendi reklam birimi kimliğinizle değiştirdiğinizden emin olun.
Mobile Ads SDK'sının test reklamlarının çalışma şekli hakkında daha fazla bilgi için Test Reklamları başlıklı makaleyi inceleyin.
Uygulama
AdView
yapılandırma
Banner reklamlar AdView
nesnelerinde gösterilir. Bu nedenle, banner reklamları entegre etmeye yönelik ilk adım, bir AdView
oluşturup konumlandırmaktır.
Uygulamanızın C++ koduna aşağıdaki başlığı ekleyin:
#include "firebase/gma/ad_view.h"
Bir
AdView
nesnesi bildirip oluşturun:firebase::gma::AdView* ad_view; ad_view = new firebase::gma::AdView();
AdSize
oluşturun veAdParent
üst görünümünü kullanarak reklam görünümünü başlatın. Üst görünüm, AndroidActivity
için bir JNIjobject
referansı veyaAdParent
türüne yayınlanmış bir iOSUIView
işaretçisidir:// my_ad_parent is a jobject reference // to an Android Activity or a pointer to an iOS UIView. firebase::gma::AdParent ad_parent = static_cast<firebase::gma::AdParent>(my_ad_parent); firebase::Future
result = ad_view->Initialize(ad_parent, kBannerAdUnit, firebase::gma::AdSize::kBanner); Geleceği değişken olarak tutmak yerine,
InitializeLastResult()
işleviniAdView
nesnesinde çağırarak başlatma işleminin durumunu düzenli olarak kontrol edebilirsiniz. Bu, küresel oyun döngünüzdeki başlatma sürecini takip etmenize yardımcı olabilir.// Monitor the status of the future in your game loop: firebase::Future<void> result = ad_view->InitializeLastResult(); if (result.status() == firebase::kFutureStatusComplete) { // Initialization completed. if(future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization successful. } else { // An error has occurred. } } else { // Initialization on-going. }
firebase::Future
ile çalışma hakkında daha fazla bilgi için Yöntem çağrılarının tamamlanma durumunu izlemek için Futures'ı kullanma başlıklı makaleyi inceleyin.
Reklamın konumunu ayarlama
AdView
konumunu başlatıldıktan sonra istediğiniz zaman ayarlayabilirsiniz:
firebase::Future<void> result = ad_view->SetPosition(firebase::gma::AdView::kPositionTop);
Reklam yükleme
AdView
başlatıldıktan sonra reklam yükleyebilirsiniz:
firebase::gma::AdRequest ad_request;
firebase::Future<firebase::gma::AdResult> load_ad_result = ad_view->LoadAd(my_ad_request);
AdRequest
nesneleri tek bir reklam isteğini temsil eder ve hedefleme gibi bilgiler için özellikler içerir.
Reklamı görüntüleme
Son olarak, Show()
işlevini çağırarak reklamı ekranda gösterin. Bu yöntem, reklam başlatıldıktan sonra herhangi bir zamanda çağrılabilir:
firebase::Future<void> result = ad_view->Show();
Reklam etkinlikleri
Google Mobile Ads C++ SDK'sı, reklam görünümünün durumundaki değişikliklerden haberdar olmak için genişletebileceğiniz ve AdView::SetListener()
öğesine iletebileceğiniz bir AdListener
sınıfı sağlar.
AdListener
'daki yöntemleri genişletmek isteğe bağlıdır. Bu nedenle yalnızca istediğiniz yöntemleri uygulamanız gerekir. Aşağıda, AdListener
yöntem sınıfının tümünü genişleten bir sınıfın örnek uygulaması verilmiştir:
class ExampleAdListener : public firebase::gma::AdListener { public: ExampleAdListener() {} void OnAdClicked() override { // This method is invoked when the user clicks the ad. } void OnAdClosed() override { // This method is invoked when the user closes the ad. } void OnAdImpression() override { // This method is invoked when an impression is recorded for an ad. } void OnAdOpened() override { // This method is invoked when an ad opens an overlay that covers the screen. } }; ExampleAdListener* ad_listener = new ExampleAdListener(); ad_view->SetAdListener(ad_listener);
Banner boyutları
Aşağıdaki tabloda standart banner boyutları listelenmiştir.
Puan cinsinden boyut (GxY) | Açıklama | Kullanılabilirlik | firebase::gma::AdSize sabiti |
---|---|---|---|
320x50 | Banner | Telefonlar ve Tabletler | kBanner |
320x100 | Büyük Banner | Telefonlar ve Tabletler | kLargeBanner |
300x250 | IAB Orta Boy Dikdörtgen | Telefonlar ve Tabletler | kMediumRectangle |
468x60 | IAB Tam Boy Banner | Tabletler | kFullBanner |
728x90 | IAB Leaderboard | Tabletler | kLeaderboard |
Belirtilen genişlik x Uyarlanabilir yükseklik | Uyarlanabilir banner | Telefonlar ve Tabletler | Yok |
Özel reklam boyutları
Özel bir banner boyutu tanımlamak için genişlik ve yükseklik parametreleriyle firebase::gma::AdSize
oluşturucusunu kullanarak istediğiniz boyutları ayarlayın.
firebase::gma::AdSize ad_size(/*width=*/320, /*height=*/50);
Ek kaynaklar
GitHub'daki örnek
- GitHub'da örnek hızlı başlangıç uygulamamızın kaynak kodunu görüntüleyin.