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 in der Liste stimmt mit der Reihenfolge der Vermittlungsabfolge für diese Anzeigenanfrage überein.
Weitere Informationen finden Sie unter Adapter-Antwortinformationen. |
GetLoadedAdapterResponseInfo |
Gibt das AdapterResponseInfo -Element zurück, das dem Adapter entspricht, mit dem die Anzeige geladen wurde. |
GetMediationAdapterClassName |
Gibt den Namen der Vermittlungsadapterklasse des Werbenetzwerks zurück, in das die Anzeige geladen wurde. |
GetResponseId |
Die Antwort-ID ist eine eindeutige Kennung für die Anzeigenantwort. Mit 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, der in der Anzeigenanfrage enthalten ist. Mit diesen können Sie Fehler bei der abfolgebasierten Vermittlung und bei der Gebotsausführung beheben. 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, das Netzwerk zu verwenden. |
AdSourceId |
Ruft die Anzeigenquelle-ID ab, die dieser Adapterantwort zugeordnet ist. Bei Kampagnen wird 6060308706800320801 für den Zielvorhabentyp „Vermittelte Anzeigen“ und 7068401028668408324 für Impressions- und Klickzielvorhaben 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 kein Netzwerkverbindungsversuch unternommen wurde. |
Hier ist ein Beispiel, wie Werte aus einem geladenen AdapterResponseInfo
gelesen werden:
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;
}