Bu sayfada mevcut ve önceki sürümlerle ilgili taşıma işlemleri ele alınmaktadır.
v22'den v23'e geçiş
Minimum Android API düzeyi 21'dir
Google Mobile Ads SDK'sının 23.0.0 sürümünden itibaren, tüm uygulamaların en az Android API düzeyi 21 üzerinde olması gerekmektedir. API seviyesini ayarlamak için uygulama düzeyindeki build.gradle
dosyanızdaki minSdkVersion
değerini 21 veya daha yüksek bir değer olarak değiştirin.
Kullanımdan Kaldırılan Yöntemler Kaldırıldı/Değiştirildi
sürüm 22.0.0 API'sı | sürüm 23.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 yapılamaz |
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() | boolean MobileAds.putPublisherFirstPartyIdEnabled() |
v21'den v22'ye geçiş
Google Mobile Ads SDK'sı sürümünü almak için MobileAds.getVersion() işlevini kullanın
22.0.0 sürümünde MobileAds.getVersionString()
yöntemi kaldırılarak yerine MobileAds.getVersion()
uygulanı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 edinmek için Yeni Google Mobile Ads SDK'sı getVersion() yöntemini kullanma bölümüne bakın.
Kaldırılmış veya değiştirilen yöntemler
Aşağıdaki tabloda, 22.0.0 sürümündeki belirli 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 | Bağdaştırıcı |
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 |
v20'den v21'e geçiş
minSdkVersion'ı 19 veya sonraki bir sürüme güncelleyin
21.0.0 sürümünden itibaren, Google Mobile Ads SDK'sı tüm uygulamaların en az Android API düzeyi 19 üzerinde olmasını gerektirir. API seviyesini ayarlamak için uygulamanızın derleme dosyasındaki minSdkVersion
değerini 19 veya daha yüksek bir değer olarak değiştirin.
Katı null kullanılabilirliği zorunlu kıl
Katı null kullanılabilirliği uygulamaya hazırlanırken, daha önce açık bir şekilde boş değer atanmamış tüm API'lere @NonNull
ek açıklamaları eklenir.
Boş güvenlik ihlalleri varsa ve null
değerlerini daha önce güvenli bir şekilde işlemediyse bu değişiklik, Java boş denetimi ç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ı
Ekstra parametreleri belirli bir reklam ağı bağdaştırıcısına NetworkExtras
örneği olarak geçiren 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:
- Uyumlulaştırma hedefleme amaçları için kullanıcının konumunu ayarlayan
AdRequest.Builder
sınıfındakisetLocation(Location location)
yöntemi. - Kullanıcının daha önce
setLocation(Location location)
yöntemine iletilen konum hedefleme bilgilerini döndürenAdRequest
sınıfındakigetLocation()
yöntemi. AdRequest
ile tanımlanırsaMediationAdConfiguration
sınıfında kullanıcının konumunu döndürengetLocation()
yöntemi.
Konum verileri Google tarafından reklam hedeflemesi amacıyla kullanılmaz. Gerekirse üçüncü taraf reklam ağlarına bilgi sağlamak için üçüncü taraf API'lerini kullanmalısınız.
Özel etkinlik arayüzlerinin kullanımdan kaldırılması
Özel etkinlikler, uyumlulaştırmayı kullanan AdMob yayıncıların AdMobdesteklenen reklam ağlarından biri olmayan bir reklam ağı için şelale uyumlulaştırması eklemesini sağlar.
Tüm özel etkinlik arayüzleri kullanımdan kaldırılmıştır. Bunun yerine Adapter
sınıfı ve MediationAdLoadCallback
arayüzü kullanıma sunulmuştur.
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 listelenmektedir:
Sürüm 20.0.0 Arayüzleri | Sürüm 21.0.0 Sınıfı/ Arayüz |
---|---|
CustomEvent | Bağdaştırıcı |
CustomEventBanner | |
CustomEventInterstitial | |
CustomEventNative | |
CustomEventBannerListener |
Bağdaştırıcı,
|
CustomEventInterstitialListener | |
CustomEventListener | |
CustomEventNativeListener |
v19'dan v20'ye geçiş
20.0.0 sürümünde çok sayıda zarar veren değişiklik var. 19.7.0 sürümü birçok yeni API sundu ve 20.0.0 sürümüne hazırlık amacıyla birçok sınıfı kullanımdan kaldırdı veya yeniden adlandırdı. Bu kılavuzda, 20.0.0 sürümündeki önemli değişiklikler vurgulanmaktadır.
Tam ekran biçimindeki 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ına uygun olacak şekilde standart hale getirilmiştir.
Tüm tam ekran biçimli API'ler aşağıdaki prensipleri kullanır:
- Statik yükleme yöntemi
- Benzer bir yük geri çağırma veya işleyici mekanizması
- Sunum geri çağırma işlevleri için
FullScreenContentCallback
sınıfına güvenme
Eski Ödüllü VideoAd API'sinin 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 oldu. Tek seferde birden fazla ödüllü reklam yükleme yeteneği de dahil olmak üzere eski RewardedVideoAd
API'sine kıyasla daha fazla geliştirme yapıldı.
Eski RewardedVideoAd
API, SDK 20.0.0 sürümünde kaldırılmıştır.
Akıllı banner'ların kullanımdan kaldırılması yerine uyarlanabilir banner'ların kullanıma sunulması
Akıllı banner reklamlar kullanımdan kaldırılarak yerini uyarlanabilir banner reklamlar aldı. Uyarlanabilir banner'lar, üstün performans ve reklam genişliğini ayarlarken daha fazla esneklik sağlar. Tam genişlikli banner'ları kullanmaya devam etmeyi tercih ederseniz bunu aşağıdaki kod snippet'inde gösterildiği gibi uyarlanabilir banner kullanarak da 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) } }
Uygulamayı geri çağırma kaldırma işleminden ayrıl
ProcessLifecycleOwner
için tüm reklam biçimleri için onAdLeftApplication
geri çağırması kaldırıldı.
İşletim sistemi düzeyinde API kullanıldığında, kullanıcılar uygulamanızdan her ayrıldığında bunun bir reklam etkileşiminden kaynaklanıp kaynaklanmadığından bağımsız olarak sizi bilgilendirir.
onAdLeftApplication
geri çağırma işlevinin hiçbir zaman bir reklam tıklama işleyicisi olarak tasarlanmadığını ve tıklamaları bildirmek için bu geri çağırmadan yararlanmanın doğru bir metrik oluşturmadığını unutmayın. Örneğin, harici bir tarayıcı başlatan Reklam Seçenekleri simgesinin tıklanması geri çağırmayı başlatır, ancak tıklama olarak sayılmaz.
Sınıf yeniden adlandırmaları
Aşağıdaki tabloda, değiştirilen veya kaldırılan belirli sınıf adları listelenmektedir. Özet olarak:
UnifiedNativeAd
ile ilgili çoğu sınıfNativeAd
olarak yeniden adlandırıldı.MobileAds.Settings
,NativeExpressAdView
,NativeAppInstallAd
,NativeContentAd
veInstreamAd
sınıfları ve görünümleri kaldırıldı.Publisher
önekine 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ü.ödüllüAdLoadCallback 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 |
biçimler.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.TagForUnderAgeOfConsent | 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 belirli 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üAd ve InterstitialAd 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 | sürüm 20.0.0 API'sı | Notlar |
---|---|---|---|
AdSize | getDikeyBanner |
getOrangeAnchored |
|
getLandscapeBanner |
getLandscapeAnchored |
||
getCurrentOrientation |
getCurrentOrientationAnchored |
||
MobileAds | initialize(Bağlam, Dize) | MobileAds.initialize(Context, OnInitializationComplete |
Uygulama kimliği artık AndroidManifest.xml dosyasında ayarlanmıştır. |
initialize(Context, String, MobileAds.Settings) | initialize(Context, OnInitializationComplete |
Ayarlar sınıfı kullanımdan kaldırıldı. | |
getÖdüllüVideo |
Kaldırıldı | Bunun yerine Ödüllü Reklam API'sini 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.Oluşturucu | setBirthday() | Kaldırıldı | |
setGender() | Kaldırıldı | ||
setIsDesignedForFamilies() | Kaldırıldı | Kılavuzu inceleyin. | |
addTestDevice() | RequestConfiguration |
Test reklamlarını etkinleştirme konusuna bakın. | |
tagForChildDirectedTreatment() | RequestConfiguration |
Reklam içeriği filtreleme bölümünü inceleyin. | |
setTagFor |
RequestConfiguration |
||
setMaxAdContentRating() | RequestConfiguration |
||
AdView | getMediationAdapter |
ResponseInfo |
Artık AdView getResponseInfo() yöntemi aracılığıyla bir ResponseInfo nesnesi kullanılabilir. |
NativeAdOptions | setImageOrientation() | setMediaAspectRatio() | |
getImageOrientation | getMediaAspectRatio() | ||
RewardedAd | loadAd(AdRequest, RewardedAdLoadCallback) | ÖdüllüAd.load(Bağlam, Dize, AdRequest, RewardedAdLoadCallback) | Ödüllü Reklam artık diğer tam ekran biçimleriyle aynı statik yükleme yaklaşımını kullanıyor. |
loadAd(PublisherAdRequest, RewardedAdLoadCallback) | ÖdüllüAd.load(Bağlam, Dize, AdManagerAdRequest, RewardedAdLoadCallback) | ||
isLoaded() | Kaldırıldı | Statik yükleme yöntemindeki geri çağırma, zaten yüklenmiş bir reklam sağlar. | |
show(Etkinlik, RewardedAdCallback) | show(Etkinlik, OnUser EarnedRewardListener) | Bu gösterim yöntemi, daha geniş tam ekran biçimi yaklaşımına uygundur. | |
RewardedAdLoadCallback | onÖdüllüReklam |
onAd |
|
onÖdüllüAd |
onAd |
||
onRewardedAdLoaded() | onAdLoaded(RewardedAd) | ||
AppOpenAdLoadCallback | onAppOpenAd |
onAd |
|
onAppOpenAd |
onAd |
||
onAppOpenAd |
onAdLoaded(AppOpenAd) | ||
RewardedInterstitialAdLoad |
onÖdüllüGeçişReklam |
onAd |
|
onRewardedInterstitialAd |
onAd |
||
onRewardedInterstitialAd |
onAd |
||
InterstitialAd | yeni InterstitialAd() | InterstitialAd.load(Context, String, AdRequest, InterstitialAdLoadCallback) | InterstitialAd, 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ı | |
forAppInstallAd() | Kaldırıldı | ||
withCorrelator() | Kaldırıldı | ||
getMediationAdapter |
Kaldırıldı |