Zu Debugging- und Logging-Zwecken wird für erfolgreich geladene Anzeigen ein ResponseInfo-Objekt bereitgestellt. Dieses Objekt enthält Informationen zur geladenen Anzeige sowie zur Vermittlungs-Waterfall-Methode, die zum Laden der Anzeige verwendet wurde.
Wenn eine Anzeige erfolgreich geladen wird, hat das Anzeigenobjekt eine GetResponseInfo()-Methode. Mit interstitialAd.GetResponseInfo() werden beispielsweise die Antwortinformationen für eine geladene Interstitial-Anzeige abgerufen.
Wenn Anzeigen nicht geladen werden können und nur ein Fehler verfügbar ist, sind die Antwortinformationen über LoadAdError.GetResponseInfo() verfügbar.
private void LoadInterstitialAd()
{
AdRequest adRequest = new AdRequest();
InterstitialAd.Load("AD_UNIT_ID", adRequest, (InterstitialAd insterstitialAd, LoadAdError error) =>
{
// If the operation failed with a reason.
if (error != null)
{
ResponseInfo errorInfo = error.GetResponseInfo();
Debug.LogError("Interstitial ad failed to load an ad with error : " + error);
return;
}
ResponseInfo loadInfo = insterstitialAd.GetResponseInfo();
});
}
Antwortinformationen
Hier sehen Sie eine Beispielausgabe von ResponseInfo.ToString(), die die Debugging-Daten für eine geladene Anzeige zeigt:
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 für das ResponseInfo-Objekt gehören:
| Methode | Beschreibung |
|---|---|
GetAdapterResponses |
Gibt die Liste von AdapterResponseInfo zurück, die Metadaten
für jeden in der Anzeigenantwort enthaltenen Adapter enthält. Kann verwendet werden, um die
Waterfall-Vermittlung und die Gebotsausführung zu debuggen. Die Reihenfolge in der Liste entspricht der
Reihenfolge der Waterfall-Vermittlung für diese Anzeigenanfrage.
|
GetLoadedAdapterResponseInfo |
Gibt die AdapterResponseInfo zurück, die dem Adapter
entspricht, der die Anzeige geladen hat. |
GetMediationAdapterClassName |
Gibt den Klassennamen des Vermittlungsadapters des Werbenetzwerks zurück, das die Anzeige geladen hat. |
GetResponseId |
Die Antwort-ID ist eine eindeutige ID für die Anzeigenantwort. Mit dieser ID kann die Anzeige im Überprüfungszentrum für Anzeigen identifiziert und blockiert werden. |
GetResponseExtras |
Gibt zusätzliche Informationen zur Anzeigenantwort zurück. Extras können die
folgenden Schlüssel zurückgeben:
|
Hier sehen Sie ein Beispiel für das Lesen von Werten aus einem geladenen ResponseInfo-Objekt:
private void LoadInterstitialAd()
{
AdRequest adRequest = new AdRequest();
InterstitialAd.Load("AD_UNIT_ID", adRequest, (InterstitialAd insterstitialAd, LoadAdError error) =>
{
// If the operation failed with a reason.
if (error != null)
{
Debug.LogError("Interstitial ad failed to load an ad with error : " + error);
return;
}
ResponseInfo responseInfo = insterstitialAd.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 in der Anzeigenantwort enthaltenen Adapter, die verwendet werden können, um die Waterfall-Vermittlung und die Gebotsausführung zu debuggen. Die Reihenfolge in der Liste entspricht der Reihenfolge der Waterfall-Vermittlung für die Anzeigenanfrage.
Hier sehen Sie eine Beispielausgabe von AdapterResponseInfo:
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 Werbenetzwerk bietet AdapterResponseInfo die folgenden Methoden:
| Methode | Beschreibung |
|---|---|
AdError |
Ruft den Fehler ab, der mit der Anfrage an das Netzwerk verknüpft ist. Gibt
null zurück, wenn das Netzwerk eine Anzeige erfolgreich geladen hat oder wenn das
Netzwerk nicht versucht wurde. |
AdSourceId |
Ruft die Anzeigenquellen-ID ab, die mit dieser Adapterantwort verknüpft ist. Für Kampagnen wird 6060308706800320801 für einen Kampagnenzieltyp für vermittelte Anzeigen und 7068401028668408324 für Zieltypen für Impressionen und Klicks zurückgegeben. Eine Liste der möglichen Anzeigenquellen-IDs, wenn ein Werbenetzwerk die Anzeige ausliefert, finden Sie unter Anzeigenquellen. |
AdSourceInstanceId |
Ruft die Anzeigenquelleninstanz-ID ab, die mit dieser Adapter Antwort verknüpft ist. |
AdSourceInstanceName |
Ruft den Anzeigenquelleninstanznamen ab, der mit dieser Adapter antwort verknüpft ist. |
AdSourceName |
Ruft die Anzeigenquelle ab, die das spezifische Werbenetzwerk darstellt, das die
Impression ausliefert. Für Kampagnen wird Mediated House Ads für einen Kampagnenzieltyp für vermittelte Anzeigen und Reservation Campaign für Zieltypen für Impressionen und Klicks zurückgegeben. Eine Liste der möglichen Anzeigenquellennamen, wenn ein Werbenetzwerk die Anzeige ausliefert, finden Sie unter Anzeigenquellen
|
AdapterClassName |
Ruft einen Klassennamen ab, der das Werbenetzwerk identifiziert. |
AdUnitMapping |
Ruft die Netzwerkkonfiguration ab, die in der AdMob-UI festgelegt wurde. |
LatencyMillis |
Ruft die Zeit ab, die das Werbenetzwerk zum Laden einer Anzeige benötigt hat.
Gibt 0 zurück, wenn das Netzwerk nicht versucht wurde. |
Hier sehen Sie ein Beispiel für das Lesen von Werten aus einem geladenen AdapterResponseInfo-Objekt:
private void LoadInterstitialAd()
{
AdRequest adRequest = new AdRequest();
InterstitialAd.Load("AD_UNIT_ID", adRequest, (InterstitialAd insterstitialAd, LoadAdError error) =>
{
// If the operation failed with a reason.
if (error != null)
{
Debug.LogError("Interstitial ad failed to load an ad with error : " + error);
return;
}
ResponseInfo responseInfo = insterstitialAd.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;
});
}