Letzte Aktualisierung: Februar 2023
Auf dieser Seite werden Migrationen für aktuelle und vorherige Versionen beschrieben.
Von Version 7 zu Version 8 migrieren
Für Vollbildformate wird jetzt eine statische Lademethode verwendet
In Version 7 des Plug-ins hatten Interstitial-Anzeigen und Anzeigen mit Prämie eine LoadAd()
-Methode auf Instanzebene zum Laden einer Anzeige, während Interstitial-Anzeigen mit Prämie und App-Start-Anzeigen eine statische Load()
-Methode zum Laden der Anzeigen hatten. In Version 8 haben alle Vollbildanzeigenformate (Interstitial, Anzeigen mit Prämie, Interstitial-Anzeigen mit Prämie und App-Start-Anzeigen) eine statische Load()
-Methode zum Laden von Anzeigen. Hier ein Beispiel für das Laden einer Interstitial-Anzeige:
Version 8 (aktuell)
#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;
});
}
Version 7 (alte Version)
#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());
}
}
Hier sehen Sie ein Beispiel für das Laden einer Anzeige mit Prämie:
Version 8 (aktuell)
// 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;
});
}
Version 7 (alte Version)
// 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());
}
}
CanShowAd() verwenden, um zu prüfen, ob Vollbildanzeigen ausgeliefert werden können
In Version 7 wurde für Vollbildanzeigen (Interstitial-Anzeigen, Anzeigen mit Prämie, Interstitial-Anzeigen mit Prämie und App-Start-Anzeigen) die Methode IsLoaded()
verwendet, die true
zurückgibt, wenn die Anzeige geladen wurde. Aufgrund der Änderung beim Laden von Anzeigen haben Sie in Version 8 erst dann Zugriff auf das Vollbildanzeigenobjekt, wenn die Anzeige geladen wurde. Daher ist die Methode IsLoaded()
überflüssig.
In Version 8 gibt es eine neue Methode mit dem Namen CanShowAd()
, die true
zurückgibt, wenn die Anzeige noch ausgeliefert werden kann. Hier ein Beispiel für die Verwendung von CanShowAd()
in einer Interstitial-Anzeige:
Version 8 (aktuell)
private InterstitialAd _interstitalAd;
public void ShowInterstitialAd()
{
if (_interstitalAd != null && _interstitalAd.CanShowAd())
{
_interstitalAd.Show();
}
else
{
Debug.Log("Interstitial ad cannot be shown.");
}
}
Version 7 (alte Version)
private InterstitialAd _interstitalAd;
public void ShowInterstitialAd()
{
if (_interstitalAd != null && _interstitalAd.IsLoaded())
{
_interstitalAd.Show();
}
else
{
Debug.Log("Interstitial ad is not ready yet.");
}
}
Verwenden Sie „Show(Action)“, um Anzeigen mit Prämie zu präsentieren.
In Version 7 des Plug-ins hatte die Methode Show()
mit einem separaten OnUserEarnedReward
-Ereignis für die Verarbeitung der Nutzerprämiensignale und für die Interstitial-Anzeige mit Prämie eine Show(Action<Reward>)
-Methode mit einem Callback zum Verarbeiten des Nutzerprämiensignals verwendet. In Version 8 haben Formate für Interstitial-Anzeigen mit Prämie und Interstitials mit Prämie die Methode Show(Action<Reward>)
mit einem Callback für die Verarbeitung der Benachrichtigung über die Nutzerprämie.
Hier ein Beispiel für eine solche Anzeige:
Version 8 (aktuell)
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.");
}
}
Version 7 (alte Version)
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);
}
Bevollmächtigte für Anzeigenereignisse übernehmen jetzt bestimmte Typargumente
In Version 7 der API haben wir EventHandlers
verwendet, um Ereignisdelegierte zu definieren. In Version 8 haben wir allgemeine Bevollmächtigte für Anzeigenereignisse eingeführt. Dadurch geben Ereignisse jetzt Ereigniswerte direkt aus, ohne in die EventArg
-Klasse eingebunden zu werden.
Hier ein Beispiel für die Verwendung von OnAdPaid
(anstelle von OnPaidEvent
):
Version 8 (aktuell)
private BannerView _bannerView;
public void ConfigureBanner()
{
_bannerView.OnAdPaid += (AdValue value) =>
{
AdValue value = value;
};
}
Version 7 (alte Version)
private BannerView _bannerView;
public void ConfigureBanner()
{
_bannerView.OnPaidEvent += (object sender, AdValueEventArg arg) =>
{
AdValue value = arg.Value;
};
}
Anzeigenformate entsprechen jetzt einer einheitlichen Benutzeroberfläche
In Version 7 des Plug-ins gab es Abweichungen bei den Ereignisnamen zwischen den Vollbildanzeigenformaten. In Version 8 haben wir viele unserer API-Methoden umbenannt, damit sie in unseren Anzeigenformaten vereinheitlicht sind.
In der folgenden Tabelle sind die Klassenänderungen in Version 8 aufgeführt.
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() |
Anzeige mit Prämie | RewardedAd.Load() |
OnAdLoaded | RewardedAd.Load() |
OnAdFailedToLoad | RewardedAd.Load() |
OnAdOpening | OnAdFullScreenContentOpened |
OnAdClosed | OnAdFullScreenContentClosed |
OnAdFailedToShow | OnAdFullScreenContentFailed |
OnAdDidRecordImpression | OnAdImpressionRecorded |
OnPaidEvent | OnAdPaid |
Show() | Show() |
OnUserEarnedReward | Show() |
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 | Verwenden Sie direkt AdError. |
AdFailedToLoadEventArgs | |
AdFailedToLoadEventArgs.LoadAdError | Verwenden Sie direkt LoadAdError. |
AdValueEventArgs | |
AdValueEventArgs.AdValue | Verwenden Sie AdValue direkt. |