Ön koşullar
Bu uygulama kılavuzunda aşağıdakiler hakkında bilgi sahibi olduğunuz varsayılmaktadır:
- AFS Özel Arama Reklamları (CSA) uygulama protokolü
- Android uygulaması geliştirme
- Android için Google Mobile Ads SDK'sı (artık Google Play Hizmetleri'nin bir parçasıdır) bir Android Studio projesiyle ilişkilendiriliyor. Google Play Hizmetleri'nin 9.0.0 sürümü gereklidir.
Sınıflar
Uygulamanızda AFSMA reklamları (dinamik yükseklikte arama ağı reklamları olarak da bilinir) yayınlamak için aşağıdaki sınıfları uygulayın:
- Bu sınıf, Android
ViewGroup
sınıfından devralır ve AFSMA reklamlarını gösterir.SearchAdView
,DynamicHeightSearchAdRequest
içeren reklam isteğinde bulunur ve döndürülen reklamları oluşturur.SearchAdView
, uygulamanın mevcut görüntüleme gruplarından herhangi birine eklenmelidir. SearchAdView
,SearchAdView
öğesinin çalıştığı bağlamla (genellikle birActivity
) örneklenmelidir.SearchAdView
örneklendikten sonra AFSMA reklamları istemek içinAdSize.SEARCH
ilesetAdSize()
yöntemini çağırmanız gerekir. Diğer sıralama değerleri, Mobil Uygulamalarda AFS ile uyumlu olmayan reklamları ister.- Mülk kodunuzla bu nesnede
setAdUnitId()
yöntemini çağırın.
DynamicHeightSearchAdRequest.Builder
- Bu sınıf, reklam isteği parametrelerini içerir. Bu, AFS masaüstü ve mobil web için JavaScript reklam isteği nesnelerindeki (sayfa seçenekleri, birim seçenekleri) parametreleri ayarlamaya benzer.
- Parametreleri uygun belirleyicilerle ayarlayın (başka bir deyişle, sorgu parametresini ayarlamak için
setQuery()
yöntemini çağırın).
Örnek uygulama
Aşağıdaki örnekte, ViewGroup
öğesinin alt görünümü olarak SearchAdView
oluşturmak için Activity
yönteminin kullanılması gösterilmektedir. AFSMA reklamlarını düzgün bir şekilde istemek için SearchAdView
nesnesi, AdSize.SEARCH
ile setAdSize()
yöntemini çağırmalıdır.
// MainActivity.java implementation
// (MainActivity is a subclass of Activity)
// Create the SearchAdView
final SearchAdView searchAdView = new SearchAdView(this);
// Set parameter to request for dynamic height search ads
searchAdView.setAdSize(AdSize.SEARCH); // Important!
// Replace with your pub ID (e.g. ms-app-pub-9616389000213823)
searchAdView.setAdUnitId("ms-app-pub-################");
// Add searchAdView to parent view group
...
Aynı Activity
içinde, SearchAdView
içinde oluşturulacak reklamın parametrelerini dikte eden bir DynamicHeightSearchAdRequest.Builder
oluşturun.
AFSMA reklamları, AFS Özel Arama Reklamları ile aynı şekilde yapılandırılır. Ayrıntılar için AFS Özel Arama Reklamları Referansı'na bakın.
// Create the ad request
DynamicHeightSearchAdRequest.Builder builder =
new DynamicHeightSearchAdRequest.Builder();
builder.setQuery("flowers");
builder.setNumber(2);
// Replace with the ID of a style from your custom search styles
builder.setAdvancedOptionValue("csa_styleId", "0000000001");
// Customization options (set using setters on
// DynamicHeightSearchAdRequest.Builder)
builder.setAdTest(true);
DynamicHeightSearchAdRequest.Builder
nesnesinde ek özellikler ayarlayarak diğer özelleştirme seçeneklerini kullanabilirsiniz.
Reklam isteği yapmak için SearchAdView
nesnesinden DynamicHeightSearchAdRequest.Builder
nesnesiyle loadAd()
yöntemini çağırın:
searchAdView.loadAd(builder.build());
Gelişmiş seçenekler
Reklam isteği parametrelerinin çoğu DynamicHeightSearchAdRequest.Builder
nesnesinde ayarlayıcı yöntemleriyle ayarlanabilir.
DynamicHeightSearchAdRequest.Builder
içinde setter yöntemi olmayan tüm parametreler, setAdvancedOptionValue()
yöntemi ile anahtar/değer çiftleri kullanılarak ayarlanabilir.
setAdvancedOptionValue()
yöntemiyle ayarlanabilecek ayarların tam listesi için AFS Özel Arama Reklamları Referansı'na bakın.
Özelliğin doğru şekilde ayarlanabilmesi için anahtar parametresinin önüne "csa_" eklenmelidir.
// Advanced customization options (set using key-value pair)
// Set a parameter (parameter_name) and its value (parameter_value)
// builder.setAdvancedOptionValue("csa_parameter_name", "parameter_value");
// Example: Show visible URL below description
// (domainLinkAboveDescription: false)
builder.setAdvancedOptionValue("csa_domainLinkAboveDescription", "false");
Bir parametrenin setter yöntemini kullanır ve bunu setAdvancedOptionValue
ile ayarlarsanız ikinci çağrı, ilk çağrıdaki değeri geçersiz kılar.
Hataları araştırma
SearchAdView
(burada searchAdView
), hataları araştırmanıza yardımcı olacak bir setAdListener()
yöntemi içerir. Aynı Activity
içinde:
searchAdView.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
// Called when an ad is loaded
super.onAdLoaded();
Toast.makeText(MainActivity.this, "Ad Loaded",
Toast.LENGTH_SHORT).show();
Log.d(MainActivity.class.getSimpleName(), "Ad Loaded");
}
@Override
public void onAdOpened() {
// Called when an ad opens an overlay that covers the screen
super.onAdOpened();
Toast.makeText(MainActivity.this, "Ad Opened",
Toast.LENGTH_SHORT).show();
Log.d(MainActivity.class.getSimpleName(), "Ad Opened");
}
@Override
public void onAdLeftApplication() {
// Called when an ad leaves the application
// (to go to the browser for example)
super.onAdLeftApplication();
Toast.makeText(MainActivity.this, "Ad Left Application",
Toast.LENGTH_SHORT).show();
Log.d(MainActivity.class.getSimpleName(), "Ad Left Application");
}
@Override
public void onAdFailedToLoad(int errorCode) {
// Called when an ad request failed
super.onAdFailedToLoad(errorCode);
Toast.makeText(MainActivity.this, "Ad Failed to Load: " + errorCode,
Toast.LENGTH_SHORT).show();
Log.e(MainActivity.class.getSimpleName(), "Ad Failed to Load: " +
errorCode);
}
});
onAdFailedToLoad()
geri çağırma yönteminde kullanılan sabitler, API referansında açıklanmıştır.
Google Play'in verilere ilişkin açıklama şartlarını karşılama
Mayıs 2021'de Google Play yeni Veri Güvenliği bölümünün kullanıma sunulacağını duyurdu. Bu bölüm, uygulamaların veri toplama, paylaşma ve güvenlik yöntemleriyle ilgili geliştiriciler tarafından sağlanan bir açıklamadan oluşacak.
Bu sayfa, AFS Yerel SDK'sını (Alışveriş için AdSense kullanımı için de geçerlidir) kullanımınızla ilgili bu veri açıklaması şartlarını yerine getirmenize yardımcı olabilir. Bu sayfada, SDK'larımızın son kullanıcı verilerini işleyip işlemediği ve nasıl işlediği hakkında bilgi bulabilirsiniz.
Size destek verirken olabildiğince şeffaf olmayı hedefliyoruz. Ancak uygulama geliştirici olarak uygulamanızın son kullanıcı verilerini toplama, paylaşma ve güvenlikle ilgili yaklaşımı hakkında Google Play Veri Güvenliği bölümü formuna nasıl yanıt vereceğinize karar vermek tamamen sizin sorumluluğunuzdadır.
Bu sayfadaki bilgiler nasıl kullanılır?
Bu sayfada, yalnızca SDK'nın en son sürümü tarafından toplanan son kullanıcı verileri listelenmektedir.
Verilerle ilgili açıklamayı tamamlamak için, toplanan verileri en iyi tanımlayan veri türünü belirlemenize yardımcı olması amacıyla Android'in veri türleri hakkındaki kılavuzunu kullanabilirsiniz. Verilerle ilgili açıklamada, söz konusu uygulamanızın toplanan verileri nasıl paylaştığını ve kullandığını da belirttiğinizden emin olun.
SDK'nın eriştiği ve topladığı veri türü
Paketler:
com.google.android.gms:play-services-afs-native
com.google.ads.afsn
Otomatik olarak toplanan veriler
AFS SDK'sı aşağıdaki verileri otomatik olarak toplar. Tüm veriler, reklam sunmak amacıyla cihazdan Google'a iletilir ve aktarım sırasında tüm veriler şifrelenir. Kullanıcının kişisel bilgileri, uygulamanız tarafından bir kullanıcı sorgusunda gönderilmediği sürece hiçbir zaman toplanmaz.
Veriler | Bu veriler aşağıdaki amaçlarla toplanır... |
---|---|
IP adresi |
Özet:
IP adresi, sahtekarlık ve kötüye kullanımın izlenmesinin yanı sıra kullanıcının yaklaşık konumunu belirlemek için de kullanılır. Daha sonra, sunulan reklamların yerel düzenlemelere uygun olmasını sağlamak ve kullanıcının yaklaşık coğrafi konumuyla alakalı reklamlar sunmak için yaklaşık konum kullanılır. |
Uygulama etkinliği
|
Özet:
Uygulamanız, anahtar kelimeyle alakalı arama ağı reklamları döndürebilmemiz için kullanıcının sorgusunu bizimle paylaşır. Döndürülen reklamlarla birlikte görüntüleme sayısını ve etkileşimi (dokunmalar) ölçeriz. |
Teşhisler |
Özet:
SDK, ürün iyileştirmelerinin uygulanması ve ölçülmesi için reklamların oluşturma gecikmesini ölçer. Ayrıca kilitlenme/hata raporları göndeririz ve yayıncılar tarafından işlevlerin nasıl kullanıldığını anlamak için gerektiğinde başka araçlar da ekleriz. |
Cihaz veya diğer tanımlayıcılar |
Özet:
Cihaz kimliği, sahtekarlık ve kötüye kullanım izlemenin yanı sıra reklam performansı ölçümüne yardımcı olmak için kullanılır. |