Gdy nastąpi wyświetlenie, pakiet SDK do reklam mobilnych Google dostarcza dane o przychodach z reklam powiązane z tym wyświetleniem. Możesz używać tych danych do obliczania wartości użytkownika w całym okresie jego aktywności lub przekazywać je do innych odpowiednich systemów.
Ten przewodnik pomoże Ci wdrożyć w projekcie Unity rejestrowanie danych o przychodach z reklam na poziomie wyświetleń.
Wymagania wstępne
- Upewnij się, że w interfejsie AdMob masz włączoną funkcję przychodów z reklam na poziomie wyświetleń.
- wtyczkę Unity w wersji 5.0.0 lub nowszej,
- Kliknij Rozpocznij. W aplikacji Unity powinna być już zaimportowana wtyczka reklam mobilnych Google dla środowiska Unity.
Aby otrzymywać dane o przychodach z reklam na poziomie wyświetleń, musisz wdrożyć co najmniej 1 format reklamy:
Implementowanie modułu obsługi płatnych zdarzeń
Każdy format reklamy ma OnAdPaid
zdarzenie. Podczas cyklu życia zdarzenia związanego z reklamą pakiet SDK do reklam mobilnych Google monitoruje zdarzenia wyświetlenia i wywołuje procedurę obsługi z obiektem AdValue
reprezentującym uzyskaną wartość.
W tym przykładzie obsługiwane są płatne zdarzenia w przypadku reklamy z nagrodą:
private void LoadRewardedAd()
{
// Send the request to load the ad.
AdRequest adRequest = new AdRequest();
RewardedAd.Load("AD_UNIT_ID", adRequest, (RewardedAd rewardedAd, LoadAdError error) =>
{
// If the operation failed with a reason.
if (error != null)
{
Debug.LogError("Rewarded ad failed to load an ad with error : " + error);
return;
}
rewardedAd.OnAdPaid += this.HandleAdPaidEvent;
});
}
public void HandleAdPaidEvent(AdValue adValue)
{
// TODO: Send the impression-level ad revenue information to your
// preferred analytics server directly within this callback.
long valueMicros = adValue.Value;
string currencyCode = adValue.CurrencyCode;
PrecisionType precision = adValue.Precision;
ResponseInfo responseInfo = rewardedAd.GetResponseInfo();
string responseId = responseInfo.GetResponseId();
AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.GetLoadedAdapterResponseInfo();
string adSourceId = loadedAdapterResponseInfo.AdSourceId;
string adSourceInstanceId = loadedAdapterResponseInfo.AdSourceInstanceId;
string adSourceInstanceName = loadedAdapterResponseInfo.AdSourceInstanceName;
string adSourceName = loadedAdapterResponseInfo.AdSourceName;
string adapterClassName = loadedAdapterResponseInfo.AdapterClassName;
long latencyMillis = loadedAdapterResponseInfo.LatencyMillis;
Dictionary<string, string> credentials = loadedAdapterResponseInfo.AdUnitMapping;
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"];
}
Identyfikowanie nazwy źródła reklamy zdarzenia niestandardowego
W przypadku źródeł reklam zdarzeń niestandardowych właściwość AdSourceName
zwraca nazwę źródła reklam Custom Event
. Jeśli używasz wielu zdarzeń niestandardowych, nazwa źródła reklamy nie jest wystarczająco szczegółowa, aby odróżnić od siebie poszczególne zdarzenia niestandardowe. Aby znaleźć konkretne zdarzenie niestandardowe, wykonaj te czynności:
- Pobierz usługę
AdapterClassName
. - Ustaw niepowtarzalną nazwę źródła reklam.
W tym przykładzie ustawiamy niepowtarzalną nazwę źródła reklam dla zdarzenia niestandardowego:
private string GetAdSourceName(AdapterResponseInfo loadedAdapterResponseInfo)
{
if (loadedAdapterResponseInfo == null)
{
return string.Empty;
}
string adSourceName = loadedAdapterResponseInfo.AdSourceName;
if (adSourceName == "Custom Event")
{
#if UNITY_ANDROID
if (loadedAdapterResponseInfo.AdapterClassName ==
"com.google.ads.mediation.sample.customevent.SampleCustomEvent")
{
adSourceName = "Sample Ad Network (Custom Event)";
}
#elif UNITY_IPHONE
if (loadedAdapterResponseInfo.AdapterClassName == "SampleCustomEvent")
{
adSourceName = "Sample Ad Network (Custom Event)";
}
#endif
}
return adSourceName;
}
Więcej informacji o źródle wygrywającej reklamy znajdziesz w artykule Pobieranie informacji o odpowiedzi reklamy.
Integracja z firmami uczestniczącymi w programie App Attribution Partner (AAP)
Szczegółowe informacje o przekazywaniu danych o przychodach z reklam na platformy analityczne znajdziesz w przewodniku partnera:
Pakiet SDK partnera |
---|
Adjust |
AppsFlyer |
Singular |
Tenjin |
Sprawdzone metody wdrażania
- Ustaw zdarzenie
OnPaidEvent
natychmiast po utworzeniu obiektu reklamy lub uzyskaniu do niego dostępu, a na pewno przed wyświetleniem reklamy. Dzięki temu nie przegapisz żadnych połączeń zwrotnych. - W
OnPaidEvent
natychmiast wyślij informacje o przychodach z reklam na poziomie wyświetleń na wybrany serwer analityczny. Dzięki temu nie pominiesz żadnych wywołań zwrotnych i unikniesz rozbieżności danych.
AdValue
AdValue
to klasa reprezentująca wartość pieniężną uzyskaną za reklamę, w tym kod waluty i typ precyzji wartości zakodowane w ten sposób.
AdValue.PrecisionType |
Opis |
---|---|
Unknown |
Nieznana wartość reklamy. Ten kod jest zwracany, gdy pingback LTV jest włączony, ale nie ma wystarczającej ilości danych. |
Estimated |
Wartość reklamy została oszacowana na podstawie danych zbiorczych. |
PublisherProvided |
Wartość reklamy podana przez wydawcę, np. CPM ustawiony ręcznie w grupie zapośredniczenia. |
Precise |
Dokładna wartość tej reklamy. |
W przypadku zapośredniczenia AdMob próbuje podać Estimated
wartość dla źródeł reklam, które są zoptymalizowane. W przypadku nieoptymalizowanych źródeł reklam lub gdy nie ma wystarczającej ilości danych zbiorczych, aby podać wiarygodne oszacowanie, zwracana jest wartość PublisherProvided
.
Testowanie wyświetleń ze źródeł reklam z ustalaniem stawek
Gdy w przypadku źródła reklam korzystającego z licytowania na poziomie wyświetleń nastąpi zdarzenie przychodów z reklam na poziomie wyświetleń w ramach żądania testowego, otrzymasz tylko te wartości:
Unknown
: wskazuje typ precyzji.
0
: wskazuje wartość reklamy.
Wcześniej typ precyzji mógł mieć wartość inną niż Unknown
, a wartość reklamy mogła być większa niż 0
.
Szczegółowe informacje o wysyłaniu żądania reklamy testowej znajdziesz w artykule Włączanie urządzeń testowych.