Bu sayfada mevcut ve önceki sürümler için taşıma işlemleri ele alınmaktadır.
v22'den v23'e geçin
Minimum Android API düzeyi 21'dir
23.0.0 sürümünden itibaren, Google Mobile Ads SDK'sı tüm uygulamaların çalışması için tüm uygulamaların minimum Android API düzeyinde 21 olmasını zorunlu tutmaktadır. API seviyesini ayarlamak için uygulama düzeyindeki build.gradle
dosyanızda minSdkVersion
değerini 21 veya daha yüksek bir değer olarak değiştirin.
Kullanımdan Kaldırılan/Değiştirilen Yöntemler
22.0.0 sürümü API'sı | v23.0.0 API'sı |
---|---|
AdRequest.Builder.addTestDevice() | RequestConfiguration.Builder.setTestDeviceIds() |
AdRequest.Builder.tagForChildDirectedTreatment() | RequestConfiguration.Builder.setTagForChildDirectedTreatment() |
AdRequest.Builder.setIsDesignedForFamilies() | RequestConfiguration.Builder.setMaxAdContentRating() |
AdFormat.UNKNOWN | Değişim yok |
AdLoader.Builder.forUnifiedNativeAd() | AdLoader.Builder.forNativeAd() |
AdLoader.Builder.forCustomTemplateAd() | AdLoader.Builder.forCustomFormatAd() |
AdLoader.Builder.withNativeAdOptions(com.google.android.gms.ads.formats .NativeAdOptions)
|
AdLoader.Builder.withNativeAdOptions(com.google.android.gms.ads.nativead .NativeAdOptions)
|
void MobileAds.setSameAppKeyEnabled() | boole MobileAds.putPublisherFirstPartyIdEnabled() |
v21'den v22'ye geçin
Google Mobile Ads SDK'sı sürümünü almak için MobileAds.getVersion() işlevini kullanın
MobileAds.getVersionString()
yöntemi 22.0.0 sürümünde kaldırılmış olup MobileAds.getVersion()
yöntemi kullanılmıştır.
Yeni yöntem, beklenen harici sürüm numarasını döndürür (örneğin, 22.0.0
). Bu değişiklik hakkında daha fazla bilgi için Yeni Google Mobile Ads SDK'sı getVersion() yöntemini kullanma bölümüne bakın.
Kaldırılan veya değiştirilen yöntemler
Aşağıdaki tabloda 22.0.0 sürümündeki değişiklikler listelenmiştir.
v21.0.0 | v22.0.0 |
---|---|
MobileAds.getVersionString() | MobileAds.getVersion() |
NativeCustomFormatAd.getVideoMediaView() | NativeCustomFormatAd.getMediaContent() |
NativeCustomFormatAd.getVideoController() | NativeCustomFormatAd.getMediaContent().getVideoController() |
AdRequest.Builder.setAdInfo() | AdRequest.Builder.setAdString() |
MediationRewardedVideoAdAdapter | Adaptör |
MediationRewardedVideoAdListener | |
com.google.android.gms.ads.mediation.VersionInfo | com.google.android.gms.ads.VersionInfo |
com.google.android.gms.ads.doubleclick.AppEventListener | com.google.android.gms.ads.admanager.AppEventListener |
20. sürümden 21. sürüme geçin
minSdkVersion seçeneğini 19 veya daha yüksek bir sürüme güncelleyin
21.0.0 sürümünden itibaren, Google Mobile Ads SDK'sı tüm uygulamaların çalışması için tüm uygulamaların minimum Android API düzeyinde 19 olmasını zorunlu tutmaktadır. API seviyesini ayarlamak için uygulamanızın derleme dosyasındaki minSdkVersion
değerini 19 veya daha yüksek olacak şekilde değiştirin.
Katı değer atanabilirliği zorunlu kıl
Katı değer atanabilirliğinin zorunlu kılınmasına hazırlık kapsamında, daha önce null değeri açık bir şekilde tanımlamayan tüm API'lere @NonNull
ek açıklamaları eklenmiştir.
Bu değişiklik, boş güvenlik ihlalleri varsa ve null
değerlerini daha önce güvenli bir şekilde işlemediyseniz Java boş kontrol çerçevelerini kullanan Kotlin uygulamalarını ve uygulamalarını bozabilir (Null-safety ile ilgili Kotlin dokümanlarına bakın).
addNetworkExtras() yönteminin kaldırılması
Belirli bir reklam ağı bağdaştırıcısına NetworkExtras
örneği olarak ek parametreler ileten addNetworkExtras()
yöntemi, SDK 20.3.0 sürümünde kullanımdan kaldırılmıştır ve 21.0.0 sürümünde kaldırılacaktır. Bunun yerine aynı AdRequest.Builder
sınıfındaki addNetworkExtrasBundle()
yöntemini kullanın.
Konum yöntemlerini kaldırma
Aşağıdaki konum yöntemleri 21.0.0 sürümünde kaldırılacaktır:
AdRequest.Builder
sınıfında, uyumlulaştırma hedefleme amaçları için kullanıcının konumunu ayarlayansetLocation(Location location)
yöntemi.AdRequest
sınıfında, kullanıcının daha öncesetLocation(Location location)
yöntemine iletilen konum hedefleme bilgilerini döndürengetLocation()
yöntemi.AdRequest
ile tanımlanırsaMediationAdConfiguration
sınıfındaki, kullanıcının konumunu döndürengetLocation()
yöntemi.
Google, konum verilerini reklamları hedeflemek için kullanmaz. Gerekirse üçüncü taraf reklam ağlarına bilgi sağlamak için üçüncü taraf API'lerini kullanmanız gerekir.
Özel etkinlik arayüzlerinin kullanımdan kaldırılması
Özel etkinlikler sayesinde yayıncılar,AdMob Uyumlulaştırması kullanarak AdMobdesteklenen reklam kaynaklarından biri olmayan bir şelale reklam kaynağı oluşturabilir.
Adapter
sınıfı ve MediationAdLoadCallback
arayüzü kullanılacak şekilde tüm özel etkinlik arayüzleri kullanımdan kaldırılmıştır.
Aşağıdaki tabloda, 21.0.0 sürümünden itibaren her özel etkinlik arayüzü için kullanılması gereken ilgili sınıf veya arayüz listelenmiştir:
v20.0.0 Arayüzleri | v21.0.0 Sınıfı/ Arayüz |
---|---|
CustomEvent | Adaptör |
CustomEventBanner | |
CustomEventInterstitial | |
CustomEventNative | |
CustomEventBannerListener |
Bağdaştırıcı,
|
CustomEventInterstitialListener | |
CustomEventListener | |
CustomEventNativeListener |
19. sürümden 20. sürüme geçin
20.0.0 sürümünde zarar veren birçok değişiklik var. 19.7.0 sürümünde birçok yeni API kullanıma sunuldu ve 20.0.0 sürümüne hazırlanırken birçok sınıf kullanımdan kaldırıldı veya yeniden adlandırıldı. Bu kılavuzda, 20.0.0 sürümündeki önemli değişiklikler vurgulanmaktadır.
Tam ekran biçim API güncellemeleri
20.0.0 sürümünden itibaren geçiş reklamı, ödüllü, ödüllü geçiş reklamı ve uygulama açılış reklamı biçimleri, tutarlı bir API tasarımı oluşturacak şekilde standart hale getirilmiştir.
Tüm tam ekran biçimi API'leri aşağıdaki ilkeleri kullanır:
- Statik yükleme yöntemi
- Benzer bir yükleme geri çağırma veya işleyici mekanizması
- Sunu geri aramaları için
FullScreenContentCallback
sınıfından yararlanma
Eski ÖdüllüVideoAd API'nin kaldırılması
Yeni RewardedAd
API ilk olarak Mart 2019'da kullanıma sunuldu ve 18 aydan uzun süredir tercih edilen ödüllü API. Uygulamada, eski RewardedVideoAd
API'ye kıyasla tek seferde birden fazla ödüllü reklam yükleme özelliği de dahil olmak üzere daha fazla iyileştirme yapıldı.
Eski RewardedVideoAd
API, SDK 20.0.0 sürümünde kaldırılmıştır.
Uyarlanabilir banner'ın yaygınlaşması için akıllı banner'ın kullanımdan kaldırılması
Akıllı banner reklamların desteği sonlandırılarak uyarlanabilir banner reklamların kullanılması amaçlanmaktadır. Uyarlanabilir banner'lar, reklam genişliğini ayarlamada üstün performans ve daha fazla esneklik sağlar. Tam genişlikte banner'lar kullanmaya devam etmek istiyorsanız bunu aşağıdaki kod snippet'inde gösterildiği gibi uyarlanabilir banner ile yapabilirsiniz:
Java
public class MyActivity extends AppCompatActivity { ... private AdSize getFullWidthAdaptiveSize() { Display display = getWindowManager().getDefaultDisplay(); DisplayMetrics outMetrics = new DisplayMetrics(); display.getMetrics(outMetrics); float widthPixels = outMetrics.widthPixels; float density = outMetrics.density; int adWidth = (int) (widthPixels / density); return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, adWidth); } }
Kotlin
class MyActivity : AppCompatActivity() { ... private val adaptiveAdSize: AdSize get() { val display = windowManager.defaultDisplay val outMetrics = DisplayMetrics() display.getMetrics(outMetrics) val density = outMetrics.density var adWidthPixels = ad_view_container.width.toFloat() if (adWidthPixels == 0f) { adWidthPixels = outMetrics.widthPixels.toFloat() } val adWidth = (adWidthPixels / density).toInt() return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, adWidth) } }
Uygulama geri arama kaldırma işleminden çık
Tüm reklam biçimleri için onAdLeftApplication
geri çağırması kaldırılmış olup ProcessLifecycleOwner
yerini almıştır.
OS düzeyinde API kullanmak, bunun bir reklam etkileşiminden kaynaklanıp kaynaklanmadığına bakılmaksızın, kullanıcılar uygulamanızdan ayrıldığında sizi bilgilendirir.
onAdLeftApplication
geri çağırmasının hiçbir zaman reklam tıklaması işleyici olarak tasarlanmadığını ve tıklamaları raporlamak için bu geri çağırmadan yararlanmanın doğru bir metrik oluşturmadığını unutmayın. Örneğin, harici bir tarayıcıyı başlatan Reklam Seçenekleri simgesine yapılan bir tıklama, geri çağırmayı çağırdı ancak tıklama olarak sayılmaz.
Sınıfları yeniden adlandırma
Aşağıdaki tabloda, değiştirilen veya kaldırılan belirli sınıf adları listelenmiştir. Özette:
UnifiedNativeAd
ile ilgili çoğu sınıfın adıNativeAd
olarak değiştirildi.MobileAds.Settings
,NativeExpressAdView
,NativeAppInstallAd
,NativeContentAd
veInstreamAd
sınıfları ve görünümleri kaldırıldı.Publisher
ön ekine sahip tüm sınıflar birAdManager
önekiyle değiştirildi.InterstitialAd
paketinin adı değişti.
19.5.0 Sınıf | 20.0.0 Sınıf |
---|---|
com.google.android.gms.ads. | com.google.android.gms.ads. |
reward.RewardedVideoAd | rewarded.RewardedAd |
reward.RewardedVideoAdListener | ödüllü.RewardAdLoadCallback ve FullScreenContentCallback |
reward.RewardItem | rewarded.RewardItem |
rewarded.RewardedAdCallback | OnUserEarnedRewardListener |
formats.UnifiedNativeAdView | nativead.NativeAdView |
formats.UnifiedNativeAd | nativead.NativeAd |
formats.UnifiedNativeAdAssetNames | nativead.NativeAdAssetNames |
formats.UnifiedNativeAd.OnUnifiedNativeAdLoadedListener | nativead.NativeAd.OnNativeAdLoadedListener |
formats.AdChoicesView | nativead.AdChoicesView |
formats.NativeAd.AdChoicesInfo | nativead.NativeAd.AdChoicesInfo |
formats.MediaView | nativead.MediaView |
formats.NativeAdViewHolder | nativead.NativeAdViewHolder |
formats.NativeAdOptions | nativead.NativeAdOptions |
formats.NativeCustomTemplateAd | nativead.NativeCustomFormatAd |
formatlar.NativeCustomTemplateAd |
Nativead.NativeCustomFormatAd |
MobileAds.Settings | Kaldırıldı |
doubleclick.PublisherAdRequest | admanager.AdManagerAdRequest |
doubleclick.PublisherAdView | admanager.AdManagerAdView |
formats.PublisherAdViewOptions | formats.AdManagerAdViewOptions |
doubleclick.PublisherInterstitialAd | admanager.AdManagerInterstitialAd |
InterstitialAd | interstitial.InterstitialAd |
NativeExpressAdView | Kaldırıldı |
instream.InstreamAd | Kaldırıldı |
mediation.admob.AdMobExtras | Kaldırıldı |
İlişkilendirici | Kaldırıldı |
search.SearchAdRequest | Kaldırıldı |
Arayüz AdRequest.TagFor UnderAgeOfConsent | Kaldırıldı |
Arayüz AdRequest.MaxAdContentRating | Kaldırıldı |
formats.NativeAppInstallAd | native.NativeAd |
formats.NativeAppInstallAdView | native.NativeAdView |
mediation.NativeAppInstallAdMapper | mediation.UnifiedNativeAdMapper |
formats.NativeContentAd | native.NativeAd |
formats.NativeContentAdView | native.NativeAdView |
mediation.NativeContentAdMapper | mediation.UnifiedNativeAdMapper |
Kaldırılan/değiştirilen yöntemler
Aşağıdaki tabloda 20.0.0 sürümündeki değişiklikler listelenmiştir. Özet olarak:
- Eski başlatma yöntemleri, MobileAds sınıfından kaldırıldı.
AdRequest.Builder()
sınıfındaki bazı yöntemler kaldırıldı veyaRequestConfiguration
sınıfına taşındı.- Ödüllü Reklam ve Geçiş Reklamı API'leri, tüm tam ekran biçimleriyle uyumlu olacak şekilde güncellendi.
- İlişkilendirici özellikleri kaldırıldı.
Sınıf | sürüm 19.5.0 API | 20.0.0 sürümü API'sı | Notlar |
---|---|---|---|
AdSize | getPortraitBanner |
getPortraitAnchored |
|
getYatayBanner |
getLandscapeAnchored |
||
getCurrentOrientation |
getCurrentOrientationAnchored |
||
MobileAds | startize(Bağlam; Dize) | MobileAds.initialize(Context, OnInitializationComplete |
Uygulama kimliği artık AndroidManifest.xml dosyasında ayarlanır. |
startize(Bağlam, Dize, MobileAds.Settings) | startize(Context, OnInitializationComplete |
Ayarlar sınıfı kullanımdan kaldırıldı. | |
getÖdüllüVideo |
Kaldırıldı | Bunun yerine ÖdüllüAd API'yi kullanın. | |
AdListener | onAdFailedToLoad(int) | onAd |
|
onAdLeftApplication() | Kaldırıldı | Tam ekran reklam biçimleri, AdListener yerine FullscreenContentCallback'i kullanır ve FullscreenContentCallback'te eşdeğer bir yöntem yoktur. Bu yöntem AdListener'dan kaldırılmıştır. | |
VideoController | getAspectRatio() | MediaContent.getAspectRatio() | |
AdRequest | getGender() | Kaldırıldı | |
getBirthday() | Kaldırıldı | ||
getNetworkExtras() | Kaldırıldı | ||
setManualImpressions |
Kaldırıldı | ||
updateCorrelator() | Kaldırıldı | Reklam içeriği filtreleme bölümünü inceleyin. | |
AdRequest.Geliştirici | setBirthday() | Kaldırıldı | |
setGender() | Kaldırıldı | ||
setIsDesignedForFamilies() | Kaldırıldı | Kılavuza bakın. | |
addTestDevice() | RequestConfiguration |
Bkz. Test reklamlarını etkinleştirme. | |
tagForChildDirectedTreatment() | RequestConfiguration |
Reklam içeriği filtreleme bölümünü inceleyin. | |
setTagFor |
RequestConfiguration |
||
setMaxAdContentRating() | RequestConfiguration |
||
AdView | getUyumlulaştırmaAdapter |
ResponseInfo |
ResponseInfo nesnesi, artık AdView yöntemi getResponseInfo() aracılığıyla kullanılabilir. |
NativeAdOptions | setImageOrientation() | setMediaAspectRatio() | |
getImageOrientation | getMediaAspectRatio() | ||
RewardedAd | loadAd(AdRequest, ÖdüllüAdLoadCallback) | ÖdüllüAd.load(Bağlam, Dize, Reklam İsteği, ÖdüllüAdLoadCallback) | Ödüllü Reklam artık diğer tam ekran biçimleriyle aynı statik yükleme yaklaşımını kullanıyor. |
loadAd(PublisherAdRequest, ÖdüllüAdLoadCallback) | ÖdüllüAd.load(Bağlam, Dize, AdManagerAdRequest, RewardAdLoadCallback) | ||
isLoaded() | Kaldırıldı | Statik yükleme yönteminden gelen geri çağırma, önceden yüklenmiş bir reklam sağlar. | |
show(Etkinlik, Ödüllü Reklam Çağrısı) | show(Etkinlik, OnUser EarnedRewardListener.) | Bu şov yöntemi, daha geniş kapsamlı tam ekran biçimi yaklaşımına uygundur. | |
RewardedAdLoadCallback | onÖdüllüAd |
onAd |
|
onÖdüllüAd |
onAd |
||
onRewardedAdLoaded() | onAdLoaded(RewardedAd) | ||
AppOpenAdLoadCallback | onAppOpenAd |
onAd |
|
onAppOpenAd |
onAd |
||
onAppOpenAd |
onAdLoaded(AppOpenAd) | ||
Ödül GeçişliAdLoad |
onÖdül geçiş reklamı |
onAd |
|
onÖdül geçiş reklamı |
onAd |
||
onÖdüllüGeçişReklamı |
onAd |
||
InterstitialAd | yeni InterstitialAd() | GeçişReklamı.load(Bağlam, Dize, Reklam İsteği, geçişAdLoadCallback) | Geçiş Reklamı artık diğer tam ekran biçimleriyle aynı statik yükleme yaklaşımını kullanıyor. |
setAdListener() | |||
DynamicHeightSearchAd |
getNetworkExtras() | Kaldırıldı | NetworkExtras sınıfı kullanımdan kaldırıldı. |
AdLoader | forContentAd() | Kaldırıldı | |
forAppLoadAd() | Kaldırıldı | ||
withCorrelator() | Kaldırıldı | ||
getUyumlulaştırmaAdapter |
Kaldırıldı |