Son güncelleme tarihi: Şubat 2023
Bu sayfada mevcut ve önceki sürümlerle ilgili taşıma işlemleri ele alınmaktadır.
Sürüm 7'den sürüm 8'e geçiş
Tam Ekran biçimlerinde artık statik yükleme yöntemi kullanılıyor
Eklentinin 7. sürümünde geçiş reklamları ve ödüllü reklamlar, reklam yüklemek için örnek düzeyinde LoadAd()
yöntemi kullanırken ödüllü geçiş reklamı ve uygulama açılış reklamları statik Load()
yöntemden yararlanıyordu. Sürüm 8'de, tüm tam ekran reklam biçimlerinde (geçiş reklamı, ödüllü, ödüllü geçiş reklamı ve uygulama açılışı) reklam yüklemek için statik Load()
yöntemi bulunacaktır. Aşağıda, geçiş reklamının
nasıl yükleneceğine ilişkin bir örnek verilmiştir:
Sürüm 8 (Mevcut)
#if UNITY_ANDROID
const string adUnitId = "ca-app-pub-3940256099942544/1033173712";
#elif UNITY_IPHONE
const string adUnitId = "ca-app-pub-3940256099942544/4411468910";
#else
const string adUnitId = "unexpected_platform";
#endif
private InterstitialAd _interstitialAd;
private void LoadAd()
{
// Load an interstitial ad
InterstitialAd.Load(adUnitId, new AdRequest(),
(InterstitialAd ad, LoadAdError loadAdError) =>
{
if (loadAdError != null)
{
Debug.Log("Interstitial ad failed to load with error: " +
loadAdError.GetMessage());
return;
}
else if (ad == null)
{
Debug.Log("Interstitial ad failed to load.");
return;
}
Debug.Log("Interstitial ad loaded.");
_interstitialAd = ad;
});
}
Sürüm 7 (Eski)
#if UNITY_ANDROID
const string adUnitId = "ca-app-pub-3940256099942544/1033173712";
#elif UNITY_IPHONE
const string adUnitId = "ca-app-pub-3940256099942544/4411468910";
#else
const string adUnitId = "unexpected_platform";
#endif
private InterstitialAd _interstitialAd;
private void LoadInterstitialAd()
{
// Initialize an InterstitialAd.
_interstitialAd = new InterstitialAd(adUnitId);
// Called when an ad request has successfully loaded.
_interstitialAd.OnAdLoaded += HandleOnAdLoaded;
// Called when an ad request has failed to load.
_interstitialAd.OnAdFailedToLoad += HandleOnAdFailedToLoad;
// Create an empty ad request.
AdRequest request = new AdRequest.Builder().Build();
// Load the interstitial with the request.
_interstitialAd.LoadAd(request);
}
private void HandleOnAdLoaded(object sender, EventArgs args)
{
Debug.Log("Interstitial ad loaded.");
}
private void HandleOnAdFailedToLoad(object sender, AdFailedToLoadEventArgs args)
{
if (args != null)
{
Debug.Log("Interstitial ad failed to load with error: " +
args.LoadAdError.GetMessage());
}
}
Aşağıda, ödüllü reklamın nasıl yükleneceğine ilişkin bir örnek verilmiştir:
Sürüm 8 (Mevcut)
// These ad units are configured to always serve test ads.
#if UNITY_ANDROID
const string adUnitId = "ca-app-pub-3940256099942544/5224354917";
#elif UNITY_IPHONE
const string adUnitId = "ca-app-pub-3940256099942544/1712485313";
#else
const string adUnitId = "unused";
#endif
private RewardedAd _rewardedAd;
private void LoadRewardedAd()
{
// Load a rewarded ad
RewardedAd.Load(adUnitId, new AdRequest(),
(Rewarded ad, LoadAdError loadError) =>
{
if (loadError != null)
{
Debug.Log("Rewarded ad failed to load with error: " +
loadError.GetMessage());
return;
}
else if (ad == null)
{
Debug.Log("Rewarded ad failed to load.");
return;
}
Debug.Log("Rewarded ad loaded.");
_rewardedAd = ad;
});
}
Sürüm 7 (Eski)
// These ad units are configured to always serve test ads.
#if UNITY_ANDROID
const string adUnitId = "ca-app-pub-3940256099942544/5224354917";
#elif UNITY_IPHONE
const string adUnitId = "ca-app-pub-3940256099942544/1712485313";
#else
const string adUnitId = "unused";
#endif
private RewardedAd _rewardedAd;
private void LoadRewardedAd()
{
// Initialize an InterstitialAd.
_rewardedAd = new RewardedAd(adUnitId);
// Called when an ad request has successfully loaded.
_rewardedAd.OnAdLoaded += HandleOnAdLoaded;
// Called when an ad request has failed to load.
_rewardedAd.OnAdFailedToLoad += HandleOnAdFailedToLoad;
// Create an empty ad request.
AdRequest request = new AdRequest.Builder().Build();
// Load the interstitial with the request.
_rewardedAd.LoadAd(request);
}
private void HandleOnAdLoaded(object sender, EventArgs args)
{
Debug.Log("Rewarded ad loaded.");
}
private void HandleOnAdFailedToLoad(object sender, AdFailedToLoadEventArgs args)
{
if (args != null)
{
Debug.Log("Rewarded ad failed to load with error: " +
args.LoadAdError.GetMessage());
}
}
Tam ekran reklam göstermeye hazır olup olmadığını kontrol etmek için CanShowAd() işlevini kullanın
Sürüm 7'de, tam ekran reklamlar (geçiş reklamları, ödüllü reklamlar, ödüllü geçiş reklamları ve uygulama açılış reklamları), reklam yüklendiyse true
değerini döndüren IsLoaded()
yöntemine sahipti. Reklamların yüklenme şeklindeki değişiklik nedeniyle sürüm 8'de reklam yüklenene kadar tam ekran reklam nesnesine erişiminiz olmaz. Bu nedenle, IsLoaded()
yöntemi geçersiz hale gelir.
Sürüm 8'de, reklam hâlâ gösterilebiliyorsa true
değerini döndüren CanShowAd()
adlı yeni bir yöntem bulunmaktadır. Aşağıda, geçiş reklamında CanShowAd()
öğesinin nasıl kullanılacağına dair bir örnek verilmiştir:
Sürüm 8 (Mevcut)
private InterstitialAd _interstitalAd;
public void ShowInterstitialAd()
{
if (_interstitalAd != null && _interstitalAd.CanShowAd())
{
_interstitalAd.Show();
}
else
{
Debug.Log("Interstitial ad cannot be shown.");
}
}
Sürüm 7 (Eski)
private InterstitialAd _interstitalAd;
public void ShowInterstitialAd()
{
if (_interstitalAd != null && _interstitalAd.IsLoaded())
{
_interstitalAd.Show();
}
else
{
Debug.Log("Interstitial ad is not ready yet.");
}
}
Ödüllü reklamları göstermek için Göster(İşlem) seçeneğini kullanın
Eklentinin 7. sürümünde ödüllü reklamlar, kullanıcı ödül sinyallerini yönetmek için ayrı bir OnUserEarnedReward
etkinliğiyle Show()
yöntemine sahipti ve ödüllü geçiş reklamında, kullanıcı ödül sinyalini işlemek için geri çağırma içeren bir Show(Action<Reward>)
yöntemi kullanılıyordu. Sürüm 8'de, ödüllü ve ödüllü geçiş reklamı biçimlerinde, kullanıcı ödülü bildirimini işlemek için geri çağırma içeren bir Show(Action<Reward>)
yöntemi olacaktır.
Aşağıda, ödüllü reklamın nasıl gösterileceğine dair bir örnek verilmiştir:
Sürüm 8 (Mevcut)
private RewardedAd _rewardedAd;
public void ShowRewardedAd()
{
if (_rewardedAd != null && _rewardedAd.CanShowAd())
{
_rewardedAd.Show((Reward reward) =>
{
Debug.Log("Rewarded ad granted a reward: " +
reward.Amount);
});
}
else
{
Debug.Log("Rewarded ad cannot be shown.");
}
}
Sürüm 7 (Eski)
private RewardedAd _rewardedAd;
public void ShowRewardedAd()
{
if (_rewardedAd != null && _rewardedAd.CanShowAd())
{
_rewardedAd.OnUserEarnedReward += HandleUserEarnedReward;
_rewardedAd.Show());
}
else
{
Debug.Log("Rewarded ad is not ready yet.");
}
}
public void HandleUserEarnedReward(object sender, Reward reward)
{
Debug.Log("Rewarded ad granted a reward: " +
reward.Amount);
}
Reklam etkinliği için yetki verilen kullanıcılar artık belirli türlerdeki bağımsız değişkenleri kullanmaya başlıyor
API'nin 7. sürümünde, etkinlik yetkilendirmesi tanımlarken EventHandlers
kullanılmıştır. 8. sürümde, reklam etkinlikleri için genel yetki verilmiş kullanıcı sayısını kullanmaya başladık. Bunun sonucunda, etkinlikler artık EventArg
sınıfında sarmalanmadan doğrudan etkinlik değerleri yayınlar.
Aşağıda, OnAdPaid
kullanımına ilişkin bir örnek verilmiştir (OnPaidEvent
yerine):
Sürüm 8 (Mevcut)
private BannerView _bannerView;
public void ConfigureBanner()
{
_bannerView.OnAdPaid += (AdValue value) =>
{
AdValue value = value;
};
}
Sürüm 7 (Eski)
private BannerView _bannerView;
public void ConfigureBanner()
{
_bannerView.OnPaidEvent += (object sender, AdValueEventArg arg) =>
{
AdValue value = arg.Value;
};
}
Reklam biçimleri artık tek tip bir arayüzde
Eklentinin 7. sürümünde, tam ekran reklam biçimleri arasında etkinlik adlarında tutarsızlıklar vardı. Sürüm 8'de, reklam biçimlerimizde tutarlı olması için API yöntemlerimizin çoğunu yeniden adlandırdık.
Aşağıdaki tabloda, v8'de kullanıma sunulan sınıf değişiklikleri listelenmektedir.
BannerView | |
---|---|
v7 | v8 |
OnAdLoaded | OnBannerAdLoaded |
OnAdFailedToLoad | OnBannerAdLoadFailed |
OnAdOpening | OnAdFullScreenContentOpened |
OnAdClosed | OnAdFullScreenContentClosed |
OnPaidEvent | OnAdPaid |
InterstitialAd | |
LoadAd() | InterstitialAd.Load() |
InterstitialAd() | InterstitialAd.Load() |
OnAdLoaded | InterstitialAd.Load() |
OnAdFailedToLoad | InterstitialAd.Load() |
OnAdOpening | OnAdFullScreenContentOpened |
OnAdClosed | OnAdFullScreenContentClosed |
OnAdFailedToShow | OnAdFullScreenContentFailed |
OnAdDidRecordImpression | OnAdImpressionRecorded |
OnPaidEvent | OnAdPaid |
RewardedAd | |
LoadAd() | RewardedAd.Load() |
ÖdüllüReklam() | RewardedAd.Load() |
OnAdLoaded | RewardedAd.Load() |
OnAdFailedToLoad | RewardedAd.Load() |
OnAdOpening | OnAdFullScreenContentOpened |
OnAdClosed | OnAdFullScreenContentClosed |
OnAdFailedToShow | OnAdFullScreenContentFailed |
OnAdDidRecordImpression | OnAdImpressionRecorded |
OnPaidEvent | OnAdPaid |
Göster (()) | Show() (Göster) |
OnUserEarnedReward | Show() (Göster) |
RewardedInterstitialAd | |
LoadAd() | RewardedInterstitialAd.Load() |
OnPaidEvent | OnAdPaid |
OnAdDidPresentFullScreenContent | OnAdFullScreenContentOpened |
OnAdDidDismissFullScreenContent | OnAdFullScreenContentClosed |
OnAdFailedToPresentFullScreenContent | OnAdFullScreenContentFailed |
OnAdDidRecordImpression | OnAdImpressionRecorded |
AppOpenAd | |
LoadAd() | AppOpenAd.Load() |
OnPaidEvent | OnAdPaid |
OnAdDidPresentFullScreenContent | OnAdFullScreenContentOpened |
OnAdDidDismissFullScreenContent | OnAdFullScreenContentClosed |
OnAdFailedToPresentFullScreenContent | OnAdFullScreenContentFailed |
OnAdDidRecordImpression | OnAdImpressionRecorded |
AdErrorEventArgs | |
AdErrorEventArgs.AdError | Doğrudan AdError'u kullanın. |
AdFailedToLoadEventArgs | |
AdFailedToLoadEventArgs.LoadAdError | Doğrudan LoadAdError işlevini kullanın. |
AdValueEventArgs | |
AdValueEventArgs.AdValue | Doğrudan AdValue'yu kullanın. |