Für Debugging- und Protokollierungszwecke wird für erfolgreich geladene Anzeigen ein ResponseInfo
-Objekt bereitgestellt. Dieses Objekt enthält Informationen zur geladenen Anzeige sowie zur Vermittlungsabfolge, die zum Laden der Anzeige verwendet wurde.
Wenn eine Anzeige erfolgreich geladen wird, hat das Anzeigenobjekt die Methode GetResponseInfo()
. InterstitialAd.GetResponseInfo()
holt beispielsweise die Antwortinformationen für eine geladene Interstitial-Anzeige ab.
Wenn Anzeigen nicht geladen werden und nur ein Fehler angezeigt wird, sind die Antwortinformationen über AdFailedToLoadEventArgs.LoadAdError.GetResponseInfo()
verfügbar.
InterstitialAd ad;
private void RequestInterstitial()
{
ad = new InterstitialAd("AD_UNIT_ID");
this.interstitial.OnAdLoaded += OnAdLoaded;
this.interstitial.OnAdFailedToLoad += HandleOnAdFailedToLoad;
AdRequest request = new AdRequest.Builder().Build();
this.interstitial.LoadAd(request);
}
private void OnAdLoaded(object sender, EventArgs args)
{
ResponseInfo info = ad.GetResponseInfo();
}
private void OnAdFailedToLoad(object sender, AdFailedToLoadEventArgs args)
{
ResponseInfo info = args.LoadAdError.GetResponseInfo();
}
Antwortinformationen
Hier ist eine Beispielausgabe, die von ResponseInfo.ToString()
zurückgegeben wird und die Debug-Daten für eine geladene Anzeige enthält:
Android
{ "Response ID": "COOllLGxlPoCFdAx4Aod-Q4A0g", "Mediation Adapter Class Name": "com.google.ads.mediation.admob.AdMobAdapter", "Adapter Responses": [ { "Adapter": "com.google.ads.mediation.admob.AdMobAdapter", "Latency": 328, "Ad Source Name": "Reservation campaign", "Ad Source ID": "7068401028668408324", "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial", "Ad Source Instance ID": "4665218928925097", "Credentials": {}, "Ad Error": "null" } ], "Loaded Adapter Response": { "Adapter": "com.google.ads.mediation.admob.AdMobAdapter", "Latency": 328, "Ad Source Name": "Reservation campaign", "Ad Source ID": "7068401028668408324", "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial", "Ad Source Instance ID": "4665218928925097", "Credentials": {}, "Ad Error": "null" }, "Response Extras": { "mediation_group_name": "Campaign" } }
iOS
** Response Info ** Response ID: CIzs0ZO5kPoCFRqWAAAdJMINpQ Network: GADMAdapterGoogleAdMobAds ** Loaded Adapter Response ** Network: GADMAdapterGoogleAdMobAds Ad Source Name: Reservation campaign Ad Source ID: 7068401028668408324 Ad Source Instance Name: [DO NOT EDIT] Publisher Test Interstitial Ad Source Instance ID: [DO NOT EDIT] Publisher Test Interstitial AdUnitMapping: { } Error: (null) Latency: 0.391 ** Extras Dictionary ** { "mediation_group_name" = Campaign; } ** Mediation line items ** Entry (1) Network: GADMAdapterGoogleAdMobAds Ad Source Name: Reservation campaign Ad Source ID:7068401028668408324 Ad Source Instance Name: [DO NOT EDIT] Publisher Test Interstitial Ad Source Instance ID: [DO NOT EDIT] Publisher Test Interstitial AdUnitMapping: { } Error: (null) Latency: 0.391
Zu den Methoden des ResponseInfo
-Objekts gehören:
Methode | Beschreibung |
---|---|
GetAdapterResponses |
Liste der AdapterResponseInfo mit Metadaten für jeden in der Anzeigenantwort enthaltenen Adapter. Kann zum Debuggen der abfolgebasierten Vermittlung und Gebotsausführung verwendet werden. Die Reihenfolge der Liste entspricht der Reihenfolge der Vermittlungsabfolge für diese Anzeigenanfrage.
Weitere Informationen finden Sie unter Adapter-Antwortinformationen. |
GetLoadedAdapterResponseInfo |
Gibt den AdapterResponseInfo zurück, der dem Adapter entspricht, über den die Anzeige geladen wurde. |
GetMediationAdapterClassName |
Gibt den Namen der Vermittlungsadapterklasse des Werbenetzwerks zurück, das die Anzeige geladen hat. |
GetResponseId |
Die Antwort-ID ist eine eindeutige Kennung für die Anzeigenantwort. Anhand dieser Kennung kann die Anzeige im Überprüfungszentrum für Anzeigen identifiziert und blockiert werden. |
GetResponseExtras |
Gibt zusätzliche Informationen zur Anzeigenantwort zurück. Für Extras können die folgenden Schlüssel zurückgegeben werden:
|
Hier ein Beispiel für Messwerte aus einer geladenen ResponseInfo
:
private void OnAdLoaded(object sender, EventArgs args)
{
ResponseInfo info = ad.GetResponseInfo();
string responseId = responseInfo.GetResponseId();
string mediationAdapterClassName = responseInfo.GetMediationAdapterClassName();
List<AdapterResponseInfo> adapterResponses = responseInfo.GetAdapterResponses();
AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.GetLoadedAdapterResponseInfo();
Dictionary<string, string> extras = responseInfo.GetResponseExtras();
string mediationGroupName = extras["mediation_group_name"];
string mediationABTestName = extras["mediation_ab_test_name"];
string mediationABTestVariant = extras["mediation_ab_test_variant"];
}
Informationen zur Adapterantwort
AdapterResponseInfo
enthält Metadaten für jeden Adapter in der Anzeigenantwort, mit denen die Vermittlungsabfolge und die Gebotsausführung debuggt werden können. Die Reihenfolge der Liste stimmt mit der Reihenfolge der Vermittlungsabfolge für die Anzeigenanfrage überein.
Hier ist eine Beispielausgabe, die von AdapterResponseInfo
zurückgegeben wird:
Android
{ "Adapter": "com.google.ads.mediation.admob.AdMobAdapter", "Latency": 328, "Ad Source Name": "Reservation campaign", "Ad Source ID": "7068401028668408324", "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial", "Ad Source Instance ID": "4665218928925097", "Credentials": {}, "Ad Error": "null" }
iOS
Network: GADMAdapterGoogleAdMobAds Ad Source Name: Reservation campaign Ad Source ID: 7068401028668408324 Ad Source Instance Name: [DO NOT EDIT] Publisher Test Interstitial Ad Source Instance ID: [DO NOT EDIT] Publisher Test Interstitial AdUnitMapping: { } Error: (null) Latency: 0.391
Für jedes Anzeigennetzwerk bietet AdapterResponseInfo
die folgenden Methoden:
Methode | Beschreibung |
---|---|
AdError |
Ruft den Fehler ab, der mit der Anfrage an das Netzwerk verknüpft ist. Wird null zurückgegeben, wenn das Netzwerk eine Anzeige geladen hat oder wenn kein Versuch unternommen wurde, eine Anzeige aus dem Netzwerk abzurufen. |
AdSourceId |
Die Anzeigenquellen-ID, die mit dieser Adapterantwort verknüpft ist. Bei Kampagnen wird 6060308706800320801 für den Zielvorhabentyp „Vermittelte Anzeigen“ und 7068401028668408324 für die Zielvorhabentypen „Impressionen“ und „Klicks“ zurückgegeben. Eine Liste der möglichen Anzeigenquellen-IDs, wenn eine Anzeige über ein Werbenetzwerk ausgeliefert wird, finden Sie unter Anzeigenquellen. |
AdSourceInstanceId |
Die Anzeigenquelleninstanz-ID, die mit dieser Adapterantwort verknüpft ist. |
AdSourceInstanceName |
Der Name der Anzeigenquelleninstanz, die mit dieser Adapterantwort verknüpft ist. |
AdSourceName |
Die Anzeigenquelle, die das Werbenetzwerk darstellt, über das die Impression ausgeliefert wird. Bei Kampagnen wird Mediated House Ads für den Zielvorhabentyp „Vermittelte Anzeigen“ und Reservation Campaign für die Zielvorhabentypen „Impressionen“ und „Klicks“ zurückgegeben. Unter Anzeigenquellen finden Sie eine Liste der möglichen Namen von Anzeigenquellen, wenn die Anzeige über ein Werbenetzwerk ausgeliefert wird. |
AdapterClassName |
Ruft den Klassennamen ab, der das Werbenetzwerk identifiziert. |
AdUnitMapping |
Ruft die Netzwerkkonfiguration ab, die über die AdMob-Benutzeroberfläche festgelegt wurde. |
LatencyMillis |
Gibt an, wie lange das Werbenetzwerk für das Laden einer Anzeige benötigt hat.
Gibt 0 zurück, wenn keine Verbindung zum Netzwerk hergestellt wurde. |
Hier ein Beispiel für Messwerte aus einer geladenen AdapterResponseInfo
:
private void OnAdLoaded(object sender, EventArgs args)
{
ResponseInfo responseInfo = ad.GetResponseInfo();
AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.getLoadedAdapterResponseInfo();
AdError adError = loadedAdapterResponseInfo.AdError;
string adSourceId = loadedAdapterResponseInfo.AdSourceId;
string adSourceInstanceId = loadedAdapterResponseInfo.AdSourceInstanceId;
string adSourceInstanceName = loadedAdapterResponseInfo.AdSourceInstanceName;
string adSourceName = loadedAdapterResponseInfo.AdSourceName;
string adapterClassName = loadedAdapterResponseInfo.AdapterClassName;
Dictionary<string, string> credentials = loadedAdapterResponseInfo.AdUnitMapping;
long latencyMillis = loadedAdapterResponseInfo.LatencyMillis;
}