Ön koşullar
Bu uygulama kılavuzunda aşağıdaki öğelere aşina olduğunuz varsayılır:
- AFS Özel Arama Reklamları (ÖAR) uygulama protokolü
- Android uygulaması geliştirme
- Android (artık Google Play hizmetlerinin bir parçası) için Google Mobile Ads SDK'sı bir Android Studio projesiyle ilişkilendiriliyor. Google Play Hizmetleri 9.0.0 sürümü gereklidir.
Sınıflar
Uygulamanızda AFSMA reklamları (dinamik yükseklik arama 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ınır ve AFSMA reklamlarını görüntüler.SearchAdView
,DynamicHeightSearchAdRequest
içeren bir reklam için istekte bulunur ve döndürülen reklamları oluşturur.SearchAdView
, uygulamanın mevcut görünüm gruplarından herhangi birine eklenmelidir. SearchAdView
, genellikleActivity
olmak üzereSearchAdView
öğesinin çalıştırıldığı bağlama göre örneklenmelidir.SearchAdView
örneklendikten sonra AFSMA reklamları istemek içinsetAdSize()
yönteminiAdSize.SEARCH
ile çağırmanız gerekir. Diğer enum değerleri, Mobil Uygulamalarda AFS ile uyumlu olmayan reklamlar için istekte bulunur.- Mülk nesnenizle birlikte bu nesnedeki
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 parametreleri (sayfa seçenekleri, birim seçenekleri) ayarlamaya benzer.
- Parametreleri uygun parametrelerle belirleyin (yani 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
kullanıldığı gösterilmektedir. AFSMA reklamlarını doğru şekilde istemek için SearchAdView
nesnesinin AdSize.SEARCH
yöntemini kullanarak setAdSize()
yöntemini çağırması gerekir.
// 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 belirleyen 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ı ile ilgili Referans bölümüne 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);
Diğer özelleştirme seçenekleri, DynamicHeightSearchAdRequest.Builder
nesnesinde ek özellikler ayarlanarak yapılabilir.
Reklam isteğinde bulunmak için loadAd()
nesnesini SearchAdView
nesnesinden DynamicHeightSearchAdRequest.Builder
nesnesiyle çağırın:
searchAdView.loadAd(builder.build());
Gelişmiş seçenekler
Reklam isteği parametrelerinin çoğu, DynamicHeightSearchAdRequest.Builder
nesnesindeki seter yöntemleri aracılığıyla ayarlanabilir.
DynamicHeightSearchAdRequest.Builder
içinde bir seter yöntemi olmayan parametreler, setAdvancedOptionValue()
yöntemiyle anahtar/değer çiftleri kullanılarak ayarlanabilir.
setAdvancedOptionValue()
yöntemiyle ayarlanabilecek ayarların tam listesi için AFS Özel Arama Reklamları Referansı bölümüne bakın.
Özelliğin doğru şekilde ayarlanması için anahtar parametresi "csa_" ön eki içermelidir.
// 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 ayarlayıcı yöntemini kullanır ve setAdvancedOptionValue
kullanarak ayarlarsanız ikinci çağrı, ilk çağrıdaki değeri geçersiz kılar.
Hataları inceleme
SearchAdView
(burada searchAdView
), hataları araştırmanıza yardımcı
olmak için 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 veri paylaşım şartlarına hazırlanma
Mayıs 2021'de Google Play yeni Veri Güvenliği bölümünü duyurdu. Bu bölüm, uygulamaların veri toplama, paylaşma ve güvenlikle ilgili yaklaşımı hakkında geliştiriciler tarafından sunulan 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ı tamamlamanıza 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 şeffaflık sunmayı hedefliyoruz. Ancak uygulamanızın geliştiricisi 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, SDK'nın yalnızca en son sürümü tarafından toplanan son kullanıcı verileri listelenmektedir.
Verilere ilişkin 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 rehberini kullanabilirsiniz. Verilere ilişkin 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 aktarılır ve tüm veriler aktarım sırasında şifrelenir. Uygulamanız tarafından kullanıcı sorgusu göndermediğiniz sürece kullanıcının kişisel bilgileri hiçbir zaman toplanmaz.
Veriler | Bu veriler aşağıdaki amaçlar doğrultusunda toplanır... |
---|---|
IP adresi |
Özet:
IP adresi, sahtekarlık ve kötüye kullanımın takip edilmesinde ve yaklaşık kullanıcı konumu elde etmek için kullanılır. Yaklaşık konum ayarı, sunulan reklamların yerel düzenlemelere uygun olduğundan emin olmak ve kullanıcının genel coğrafi konumuyla alakalı reklamlar sunmak için 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 ilgili görüntüleme ve etkileşim (dokunma) sayısını ölçeriz. |
Teşhisler |
Özet:
SDK, ürün iyileştirmelerinin uygulanmasına ve ölçülmesine olanak tanımak için reklamlar için 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ın yanı sıra reklam performansı ölçümüne yardımcı olmak için kullanılır. |