Banner reklamlar, uygulama düzeninde cihaz ekranının üst veya alt kısmında bir yer kaplar. Kullanıcılar uygulamayla etkileşim kurarken ekranda kalmaya devam eder ve belirli bir süre sonra otomatik olarak yenilenebilir. Mobil reklamcılıkta yeniyseniz bu reklamlar başlamak için idealdir. Örnek olay.
Ön koşullar
- Başlayın bölümünü tamamlayın.
- (Yalnızca Android) JNI
jobjectreferanslarıyla çalışma konusunda bilgi sahibi olma (Android JNI ipuçları bölümüne bakın).
Her zaman test reklamlarıyla test edin
Uygulamalarınızı oluştururken ve test ederken yayındaki üretim reklamları yerine test reklamlarını kullandığınızdan emin olun. Bu koşula uymamanız halinde hesabınız askıya alınabilir.
Test reklamlarını yüklemenin en kolay yolu, banner'lar için özel test reklam birimi kimliğimizi kullanmaktır. Bu kimlik, cihaz platformuna göre değişiklik gösterir:
- 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 ve hata ayıklama sırasında bunları kendi uygulamalarınızda kullanabilirsiniz. Uygulamanızı yayınlamadan önce bu kimliği kendi reklam birimi kimliğinizle değiştirmeyi unutmayın.
Mobile Ads SDK'sının test reklamlarının işleyiş şekli hakkında daha fazla bilgi için Test Reklamları bölümüne bakın.
Uygulama
AdView yapılandırma
Banner reklamlar AdView nesnelerinde gösterilir. Bu nedenle, banner reklamları entegre etmenin 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
AdViewnesnesi tanımlayın ve örneklendirin:firebase::gma::AdView* ad_view; ad_view = new firebase::gma::AdView();
AdSizeoluşturun veAdParentebeveyn görünümünü kullanarak reklam görünümünü ilk kullanıma hazırlayın. Üst görünüm, bir AndroidActivityiçin JNIjobjectreferansı veyaAdParenttürüne dönüştürülmüş bir iOSUIViewiş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 tutmaya alternatif olarak,
AdViewnesnesindeInitializeLastResult()yöntemini çağırarak başlatma işleminin durumunu düzenli olarak kontrol edebilirsiniz. Bu, global oyun döngünüzdeki başlatma sürecini takip etmek için yararlı 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::Futureile çalışma hakkında daha fazla bilgi için Yöntem çağrılarının tamamlanma durumunu izlemek için Future'ları kullanma başlıklı makaleyi inceleyin.
Reklamın konumunu ayarlama
AdView başlatıldıktan sonra istediğiniz zaman konumunu 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österme
Son olarak, Show() yöntemini ç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() sınıfına iletebileceğiniz bir AdListener sınıfı sağlar.
AdListener içindeki yöntemleri genişletmek isteğe bağlıdır. Bu nedenle, yalnızca istediğiniz yöntemleri uygulamanız gerekir. Aşağıda, tüm AdListener yöntemleri sınıfı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 Dikdörtgen | Telefonlar ve Tabletler | kMediumRectangle |
| 468x60 | IAB Tam Boyutlu Banner | Tabletler | kFullBanner |
| 728x90 | IAB Leaderboard | Tabletler | kLeaderboard |
| Sağlanan 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.