Para fins de depuração e geração de registros, os anúncios carregados fornecem um objeto ResponseInfo
. Esse objeto contém informações sobre o anúncio carregado,
além de informações sobre a hierarquia de mediação usada para carregar o anúncio.
Para casos em que um anúncio é carregado, o objeto de anúncio tem um
método GetResponseInfo()
. Por exemplo, interstitialAd.GetResponseInfo()
recebe as informações de resposta de um anúncio intersticial carregado.
Nos casos em que os anúncios não são carregados e apenas um erro está disponível, as informações de resposta são disponibilizadas por LoadAdError.GetResponseInfo()
.
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();
});
}
Informações de resposta
Confira um exemplo de saída retornado por ResponseInfo.ToString()
mostrando os
dados de depuração retornados para um anúncio carregado:
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
Os métodos no objeto ResponseInfo
incluem:
Método | Descrição |
---|---|
GetAdapterResponses |
Retorna a lista de AdapterResponseInfo que contém metadados de cada adaptador incluído na resposta do anúncio. Pode ser usado para depurar a
mediação em hierarquia e a execução dos lances. A ordem da lista corresponde à ordem da hierarquia de mediação para essa solicitação de anúncio.
Consulte Informações de resposta do adaptador para mais informações. |
GetLoadedAdapterResponseInfo |
Retorna o AdapterResponseInfo correspondente ao adaptador que carregou o anúncio. |
GetMediationAdapterClassName |
Retorna o nome da classe do adaptador de mediação da rede de publicidade que carregou o anúncio. |
GetResponseId |
O identificador de resposta é exclusivo para a resposta do anúncio. Esse identificador pode ser usado para identificar e bloquear o anúncio na Central de revisão de anúncios (ARC, na sigla em inglês). |
GetResponseExtras |
Retorna informações extras sobre a resposta do anúncio. Os extras podem retornar as
seguintes chaves:
|
Confira um exemplo de leitura de valores de um ResponseInfo
carregado:
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"];
});
}
Informações de resposta do adaptador
AdapterResponseInfo
contém metadados para cada adaptador incluído na resposta
do anúncio, que podem ser usados para depurar a mediação em hierarquia e a execução
dos lances. A ordem da lista corresponde à ordem da hierarquia de mediação
da solicitação de anúncio.
Confira um exemplo de saída retornado por 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
Para cada rede de publicidade, o AdapterResponseInfo
oferece os seguintes métodos:
Método | Descrição |
---|---|
AdError |
Recebe o erro associado à solicitação para a rede. Retornará
null se a rede tiver carregado um anúncio ou se
não houve tentativa de rede. |
AdSourceId |
Recebe o ID da origem de anúncios associado à resposta do adaptador. Para campanhas, 6060308706800320801 é retornado para um tipo de meta de campanha de anúncios mediados e 7068401028668408324 é retornado para tipos de meta de impressão e clique. Consulte Origens de anúncios
para uma lista de possíveis IDs quando uma rede veicula o anúncio. |
AdSourceInstanceId |
Recebe o ID da instância da origem de anúncios associado à resposta do adaptador. |
AdSourceInstanceName |
Recebe o nome da instância da origem de anúncios associada a essa resposta do adaptador. |
AdSourceName |
Recebe a origem de anúncios que representa a rede de publicidade específica que veicula a
impressão. Para campanhas, Mediated House Ads é retornado para um tipo de meta de campanha de anúncios mediados e Reservation Campaign é retornado para tipos de meta de impressão e clique. Consulte Origens de anúncios para uma lista de possíveis nomes quando uma rede veicula o anúncio. |
AdapterClassName |
Recebe um nome de classe que identifica a rede de publicidade. |
AdUnitMapping |
Recebe a configuração de rede definida na interface da AdMob. |
LatencyMillis |
Recebe o tempo que a rede de publicidade gastou carregando um anúncio.
Retornará 0 se não houver tentativa de rede. |
Confira um exemplo de leitura de valores de um AdapterResponseInfo
carregado:
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;
});
}