Z tego przewodnika dowiesz się, jak za pomocą Google Mobile Ads Flutter Plugin wczytywać i wyświetlać reklamy z Unity Ads przy użyciu zapośredniczenia, w tym integracji z określaniem stawek i kaskadą. Wyjaśniamy w nim, jak dodać reklamy Unity do konfiguracji mediacji jednostki reklamowej oraz jak zintegrować pakiet SDK i adapter reklam Unity z aplikacją Flutter.
Obsługiwane integracje i formaty reklam
Adapter zapośredniczenia AdMob dla Unity Ads ma te możliwości:
| Integracja | |
|---|---|
| Określanie stawek | |
| Kaskada | 1 |
| Formaty | |
| Baner | |
| Pełnoekranowa | |
| Z nagrodą | |
Wymagania wstępne
Zanim przejdziesz dalej, sprawdź, czy:
- Najnowsza wersja Google Mobile Ads Flutter Plugin.
- platformy Flutter w wersji 3.7.0 lub nowszej,
- [W przypadku określania stawek]: aby zintegrować wszystkie obsługiwane formaty reklam z określaniem stawek, użyj wtyczki do mediacji w reklamach mobilnych Google w przypadku Unity Ads w wersji 1.1.0 lub nowszej (zalecana jest najnowsza wersja).
- Wdrażanie na Androidzie
- Android w wersji API 24 lub nowszej.
- Wdrażanie na iOS
- iOS w wersji 13.0 lub nowszej.
- działający projekt Fluttera skonfigurowany za pomocą Google Mobile Ads Flutter Plugin; Więcej informacji znajdziesz w artykule Konfigurowanie Google Mobile Ads Flutter Plugin.
- Skonfiguruj zapośredniczenie AdMob.
Krok 1. Skonfiguruj ustawienia w interfejsie Unity Ads
Zarejestruj się lub zaloguj w Unity Ads.
Utwórz projekt
W panelu Unity Ads otwórz Projekty i kliknij Nowy.

Wypełnij formularz i kliknij Utwórz, aby dodać projekt.

Kliknij kolejno Zarabianie na reklamach Unity i Rozpocznij.

W oknie Nowy projekt wybierz Będę korzystać z mediacji i Google AdMob jako Partnera do mediacji, a potem kliknij Dalej.

Wybierz opcję ustawień reklam, a potem kliknij Dalej.

Wybierz konfigurację miejsca docelowego, a potem kliknij Dalej.
Określanie stawek

Kaskada

Wypełnij formularz i kliknij Dodaj projekt.

Zapisz identyfikator gry.

Tworzenie jednostek reklamowych i miejsc docelowych
Kliknij kolejno Unity Ads Monetization (Zarabianie na reklamach Unity) > Placements (Miejsca docelowe), a następnie wybierz projekt i kliknij Add ad unit (Dodaj jednostkę reklamową).

Wpisz nazwę jednostki reklamowej, a następnie wybierz platformę i format reklamy.
Android

iOS

Określanie stawek
W sekcji Konfiguracja wybierz Określanie stawek. W sekcji Miejsce docelowe wpisz nazwę miejsca docelowego.

Zanotuj identyfikator miejsca docelowego.
Kaskada
W sekcji Konfiguracja wybierz Waterfall. W sekcji Miejsce docelowe wpisz nazwę miejsca docelowego, tagowanie geograficzne i kierowanie.

Zanotuj identyfikator miejsca docelowego.
Na koniec kliknij Dodaj jednostkę reklamową, aby zapisać jednostkę reklamową i miejsce docelowe.
Znajdowanie klucza interfejsu Unity Ads Reporting API
Określanie stawek
Ten krok nie jest wymagany w przypadku integracji z określaniem stawek.
Kaskada
Otwórz Unity Ads Monetization > API management i zanotuj klucz interfejsu API w sekcji Monetization Stats API Access (Dostęp do interfejsu API statystyk zarabiania).

Następnie kliknij Unity Ads Monetization (Generowanie przychodu z reklam Unity) > Organization Settings (Ustawienia organizacji) i zanotuj Organization core ID (Główny identyfikator organizacji).

Aktualizowanie pliku app-ads.txt
Plik Authorized Sellers for Apps app-ads.txt to projekt IAB Tech Lab, który ma zagwarantować, że Twoje zasoby reklamowe w aplikacjach będą sprzedawane tylko w tych kanałach, na które wyrażasz zgodę. Aby zapobiec znacznej utracie przychodów z reklam, musisz wdrożyć plik app-ads.txt.
Jeśli jeszcze tego nie zrobiono, skonfiguruj plik app-ads.txt pod kątem aplikacji.
Aby wdrożyć app-ads.txt w przypadku Unity Ads, zapoznaj się z informacjami o pierwszej konfiguracji pliku app-ads.txt.
Włączanie trybu testowego
Tryb testowy można włączyć w panelu Unity Ads. Kliknij Generowanie przychodu z reklam Unity > Testowanie.
Możesz wymusić tryb testowy w aplikacji, klikając przycisk edycji każdej platformy, włączając opcję Zastąp tryb testowy klienta i wybierając Wymuś tryb testowy (czyli używaj reklam testowych) na wszystkich urządzeniach.
Android

iOS

Możesz też włączyć tryb testowy na określonych urządzeniach, klikając Dodaj urządzenie testowe.

Wpisz szczegóły urządzenia testowego i kliknij Zapisz.

Krok 2. Skonfiguruj popyt Unity Ads w interfejsie AdMob
Konfigurowanie ustawień zapośredniczenia dla jednostki reklamowej
Android
Instrukcje znajdziesz w kroku 2 przewodnika dotyczącego Android.
iOS
Instrukcje znajdziesz w kroku 2 przewodnika dotyczącego iOS.
Dodawanie Unity Ads do listy partnerów reklamowych zachowujących zgodność z RODO i amerykańskimi przepisami stanowymi
Aby dodać Unity Ads do listy partnerów reklamowych zachowujących zgodność z rozporządzeniami europejskimi i amerykańskimi przepisami stanowymi w interfejsie AdMob, wykonaj czynności opisane w sekcjach Ustawienia dotyczące rozporządzeń europejskich i Ustawienia dotyczące amerykańskich przepisów stanowych.
Krok 3. Zaimportuj pakiet SDK i adapter Unity Ads
Integracja za pomocą pub.dev
Dodaj tę zależność z najnowszymi wersjami pakietu SDK do reklam Unity i adaptera w pliku pubspec.yaml pakietu:
dependencies:
gma_mediation_unity: ^1.11.1
Integracja ręczna
Pobierz najnowszą wersję wtyczki zapośredniczenia reklam mobilnych Google dla Unity Ads, wyodrębnij pobrany plik i dodaj wyodrębniony folder wtyczki (wraz z jego zawartością) do projektu Flutter. Następnie odwołaj się do wtyczki w pliku pubspec.yaml, dodając tę zależność:
dependencies:
gma_mediation_unity:
path: path/to/local/package
Krok 4. Wdróż ustawienia prywatności w pakiecie Unity Ads SDK
Zgoda użytkowników z UE i RODO
Aby zachować zgodność z polityką Google w zakresie zgody użytkownika z UE, musisz przekazywać użytkownikom z Europejskiego Obszaru Gospodarczego (EOG), Szwajcarii i Wielkiej Brytanii określone informacje oraz uzyskiwać ich zgodę na używanie plików cookie lub innych form lokalnego przechowywania danych, jeśli jest to wymagane przez prawo, a także na zbieranie, udostępnianie i wykorzystywanie danych osobowych na potrzeby personalizacji reklam. Polityka ta odzwierciedla wymagania UE zawarte w dyrektywie o prywatności i łączności elektronicznej oraz w Ogólnym rozporządzeniu o ochronie danych (RODO). Odpowiadasz za sprawdzenie, czy zgoda jest przekazywana do każdego źródła reklam w łańcuchu zapośredniczenia.
Adapter Unity Ads Flutter w wersji 1.10.0 i nowszych obsługuje przekazywanie sygnałów zgody na wykorzystanie danych zgodnie z RODO z platform do zarządzania zgodą użytkowników, które są zintegrowane z Zasadami IAB dotyczącymi przejrzystości i uzyskiwania zgody na przetwarzanie danych, do pakietu Unity Ads SDK. Więcej informacji znajdziesz w artykule Konfigurowanie zgody w ramach zasad TCF lub poza nimi.
Amerykańskie przepisy stanowe o ochronie prywatności
Amerykańskie przepisy stanowe o ochronie prywatności wymagają, aby użytkownicy mieli prawo wycofać zgodę na „sprzedaż” „danych osobowych” (w znaczeniu określonym w ustawie). W tym celu na stronie głównej podmiotu „sprzedającego” musi być umieszczony dobrze widoczny link „Nie sprzedawaj moich danych osobowych”. Przewodnik po zgodności z przepisami stanowymi USA dotyczącymi ochrony prywatności umożliwia włączenie ograniczonego przetwarzania danych na potrzeby wyświetlania reklam Google, ale Google nie może zastosować tego ustawienia do każdej sieci reklamowej w Twoim łańcuchu zapośredniczenia. Dlatego musisz wskazać każdą sieć reklamową w łańcuchu zapośredniczenia, która może uczestniczyć w sprzedaży danych osobowych, i postępować zgodnie z wytycznymi każdej z tych sieci, aby zapewnić zgodność z przepisami.
Wtyczka zapośredniczenia reklam mobilnych Google dla Unity Ads zawiera metodęGmaMediationUnity.setCCPAConsent(). Poniższy przykładowy kod pokazuje, jak przekazywać informacje o uzyskanej zgodzie do pakietu Unity Ads SDK. Jeśli zdecydujesz się wywołać tę metodę, zalecamy, aby zrobić to przed wysłaniem żądania reklamy za pomocą Google Mobile Ads Flutter Plugin.
import 'package:gma_mediation_unity/gma_mediation_unity.dart';
// ...
GmaMediationUnity.setCCPAConsent(true);
Ustawianie ograniczeń wiekowych
Wtyczka do zapośredniczenia Unity Ads w wersji 1.6.5 i nowszych przekazuje do Unity Ads ustawienie dotyczące treści skierowanych do dzieci oraz ustawienie użytkowników poniżej wieku świadomego wyrażenia zgody.
Aby przetwarzać te sygnały na poziomie poszczególnych użytkowników, musisz w panelu Unity Monetization włączyć oznaczenie Mixed Audience (Odbiorcy mieszani). Więcej informacji o włączaniu oznaczenia dla odbiorców mieszanych w projekcie znajdziesz w artykule Ustawianie oznaczeń wiekowych na poziomie gry.
Krok 5. Dodaj wymagany kod
Android
Integracje Unity Ads na Androidzie nie wymagają dodatkowego kodu.
iOS
Integracja SKAdNetwork
Postępuj zgodnie z dokumentacją Unity Ads, aby dodać identyfikatory SKAdNetwork do pliku Info.plist w projekcie.
Krok 6. Przetestuj implementację
Włączanie reklam testowych
Upewnij się, że zarejestrowano urządzenie testowe w AdMob i włączono tryb testowy w interfejsie Unity Ads.
Weryfikowanie reklam testowych
Aby sprawdzić, czy otrzymujesz reklamy testowe z Unity Ads, włącz testowanie pojedynczego źródła reklam w inspektorze reklam, korzystając ze źródeł reklam Unity Ads (określanie stawek) i Unity Ads (kaskadowe).
Kody błędów
Jeśli adapter nie otrzyma reklamy z Unity Ads, wydawcy mogą sprawdzić podstawowy błąd w odpowiedzi na żądanie reklamy za pomocą ResponseInfo w tych klasach:
Android
com.google.ads.mediation.unity.UnityAdapter
com.google.ads.mediation.unity.UnityMediationAdapter
iOS
GADMAdapterUnity
GADMediationAdapterUnity
Oto kody i komunikaty towarzyszące, które są zwracane przez adapter UnityAds, gdy nie uda się wczytać reklamy:
Android
| Kod błędu | Przyczyna |
|---|---|
| 0-10 | Pakiet SDK UnityAds zwrócił błąd. Więcej informacji znajdziesz w kodzie. |
| 101 | Parametry serwera UnityAds skonfigurowane w interfejsie AdMob są nieprawidłowe lub ich brakuje. |
| 102 | UnityAds zwróciło miejsce docelowe w stanie NO_FILL. |
| 103 | UnityAds zwróciło miejsce docelowe w stanie WYŁĄCZONO. |
| 104 | UnityAds próbowało wyświetlić reklamę z kontekstem o wartości null. |
| 105 | Kontekst używany do inicjowania, wczytywania lub wyświetlania reklam z Unity Ads nie jest instancją aktywności. |
| 106 | UnityAds próbowało wyświetlić reklamę, która nie jest gotowa do wyświetlania. |
| 107 | Usługa UnityAds nie jest obsługiwana na tym urządzeniu. |
| 108 | UnityAds może w danym momencie wczytać tylko 1 reklamę na miejsce docelowe. |
| 109 | Usługa UnityAds zakończyła działanie ze stanem ERROR. |
| 110 | Żądany rozmiar reklamy nie pasuje do rozmiaru banera obsługiwanego przez UnityAds. |
| 111 | UnityAds zwrócił błąd inicjowania. |
| 112 | Unity Ads zwróciło token ustalania stawek o wartości null lub pusty. |
| 200-204 | UnityAds Banner – określony błąd. Więcej informacji znajdziesz w sekcji kod. |
iOS
| 0-9 | Pakiet SDK UnityAds zwrócił błąd. Więcej informacji znajdziesz w dokumentacji Unity. |
| 101 | Parametry serwera UnityAds skonfigurowane w interfejsie AdMob są nieprawidłowe lub ich brakuje. |
| 102 | Urządzenie nieobsługiwane przez UnityAds. |
| 103 | Wyświetlanie reklamy UnityAds zostało zakończone z błędem kUnityAdsFinishStateError. |
| 104 | Po wywołaniu inicjatora obiektu reklamy Unity jest on pusty. |
| 105 | Nie udało się wyświetlić reklam Unity Ads, ponieważ reklama nie była gotowa. |
| 107 | UnityAds wywołało wywołanie zwrotne zmiany miejsca docelowego ze stanem miejsca docelowego kUnityAdsPlacementStateDisabled. |
| 108 | W tym miejscu docelowym została już załadowana reklama. Pakiet SDK UnityAds nie obsługuje wczytywania wielu reklam w tym samym miejscu docelowym. |
| 109 | Baner reklamowy zwrócony przez UnityAds nie pasuje do żądanego rozmiaru. |
| 110 | UnityAds zwrócił błąd inicjowania. |
| 111 | Nieobsługiwany format reklamy. |
| 112 | UnityAds zwróciło token licytowania o wartości null lub pusty. |
Dziennik zmian adaptera zapośredniczenia Unity Ads Flutter
Wersja 1.11.1
- Obsługuje adapter Unity na Androida w wersji 4.20.1.0.
- Obsługuje adapter Unity na iOS w wersji 4.20.1.0.
- Zbudowano i przetestowano za pomocą wtyczki reklam mobilnych Google do Fluttera w wersji 9.1.0.
Wersja 1.11.0
- Obsługuje adapter Unity na Androida w wersji 4.20.0.1.
- Obsługuje adapter Unity iOS w wersji 4.20.0.0.
- Zbudowano i przetestowano za pomocą wtyczki reklam mobilnych Google do Fluttera w wersji 9.1.0.
Wersja 1.10.0
- Zaktualizowano obsługę wtyczki reklam mobilnych Google do Fluttera w wersji 9.1.0.
- Dodano obsługę Swift Package Manager.
- Obsługuje adapter Unity na Androida w wersji 4.20.0.0.
- Obsługuje adapter Unity iOS w wersji 4.19.0.1.
- Zbudowano i przetestowano za pomocą wtyczki reklam mobilnych Google do Fluttera w wersji 9.1.0.
Wersja 1.9.0
- Zaktualizowano, aby obsługiwać wtyczkę reklam mobilnych Google do Fluttera w wersji 9.0.0.
- Obsługuje adapter Unity na Androida w wersji 4.19.0.0.
- Obsługuje adapter Unity na iOS w wersji 4.19.0.0.
- Zbudowano i przetestowano za pomocą wtyczki reklam mobilnych Google do Fluttera w wersji 9.0.0.
Wersja 1.8.1
- Obsługuje adapter Unity na Androida w wersji 4.18.0.0.
- Obsługuje adapter Unity na iOS w wersji 4.18.1.0.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 8.0.0.
Wersja 1.8.0
- Obsługuje adapter Unity na Androida w wersji 4.18.0.0.
- Obsługuje adapter Unity na iOS w wersji 4.18.0.0.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 8.0.0.
Wersja 1.7.0
- Zaktualizowano minimalną wersję Fluttera do 3.38.1.
- Zaktualizowano obsługę wtyczki reklam mobilnych Google do Fluttera w wersji 8.0.0.
- Obsługuje adapter Unity na Androida w wersji 4.17.0.0.
- Obsługuje adapter Unity na iOS w wersji 4.17.0.0.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 8.0.0.
Wersja 1.6.5
- Obsługuje adapter Unity na Androida w wersji 4.16.6.0.
- Obsługuje adapter Unity na iOS w wersji 4.16.6.0.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 6.0.0.
Wersja 1.6.4
- Zaktualizowano minimalną wersję Fluttera do 3.35.1
- Zaktualizowano obsługę wtyczki reklam mobilnych Google do Fluttera w wersji 7.0.0
- Obsługuje adapter Unity na Androida w wersji 4.16.5.0.
- Obsługuje adapter Unity na iOS w wersji 4.16.5.0.
Wersja 1.6.3
- Obsługuje adapter Unity na Androida w wersji 4.16.3.0.
- Obsługuje adapter Unity na iOS w wersji 4.16.3.0.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 6.0.0.
Wersja 1.6.2
- Obsługuje adapter Unity na Androida w wersji 4.16.3.0.
- Obsługuje adapter Unity na iOS w wersji 4.16.2.0.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 6.0.0.
Wersja 1.6.1
- Obsługuje adapter Unity na Androida w wersji 4.16.1.0.
- Obsługuje adapter Unity na iOS w wersji 4.16.1.0.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 6.0.0.
Wersja 1.6.0
- Wymaga teraz minimalnej wersji iOS 13.0.
- Obsługuje adapter Unity na Androida w wersji 4.16.0.0.
- Obsługuje adapter Unity na iOS w wersji 4.16.0.0.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 6.0.0.
Wersja 1.5.1
- Obsługuje adapter Unity na Androida w wersji 4.15.1.0.
- Obsługuje adapter Unity na iOS w wersji 4.15.1.0.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 6.0.0.
Wersja 1.5.0
- Obsługuje adapter Unity na Androida w wersji 4.15.0.0.
- Obsługuje adapter Unity na iOS w wersji 4.15.0.0.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 6.0.0.
Wersja 1.4.1
- Obsługuje adapter Unity na Androida w wersji 4.14.2.0.
- Obsługuje adapter Unity na iOS w wersji 4.14.2.0.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 6.0.0.
Wersja 1.4.0
- Obsługuje adapter Unity na Androida w wersji 4.14.1.0.
- Obsługuje adapter Unity na iOS w wersji 4.14.1.1.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 6.0.0.
Wersja 1.3.0
- Obsługuje adapter Unity na Androida w wersji 4.13.1.0.
- Obsługuje adapter Unity na iOS w wersji 4.13.1.0.
- Zbudowano i przetestowano za pomocą wtyczki reklam mobilnych Google do Fluttera w wersji 5.3.1.
Wersja 1.2.0
- Obsługuje adapter Unity na Androida w wersji 4.13.0.0.
- Obsługuje adapter Unity na iOS w wersji 4.12.5.0.
- Zbudowano i przetestowano za pomocą wtyczki reklam mobilnych Google do Fluttera w wersji 5.3.1.
Wersja 1.1.0
- Obsługuje adapter Unity na Androida w wersji 4.12.3.0.
- Obsługuje adapter Unity na iOS w wersji 4.12.3.1.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 5.2.0.
Wersja 1.0.0
- Pierwsza wersja.
- Obsługuje adapter Unity na Androida w wersji 4.10.0.0.
- Obsługuje adapter Unity na iOS w wersji 4.10.0.0.
- Zbudowano i przetestowano przy użyciu wtyczki reklam mobilnych Google do Fluttera w wersji 5.0.0.