Ten krótki przewodnik jest przeznaczony dla wydawców i deweloperów, którzy chcą korzystać z AdMob aby zarabiać na aplikacji stworzonej za pomocą Firebase. Jeśli nie planujesz dodawać Firebase do swojej aplikacji, otwórz samodzielna AdMob .
Poznaj wszystkie funkcje zalet korzystania z AdMob, Firebase, i Google Analytics razem.
Jeśli korzystasz z tego przewodnika po raz pierwszy, zalecamy pobierz i wykonaj instrukcje testu pakietu SDK do reklam mobilnych Google w języku C++;
Zanim zaczniesz
Jeśli nie masz jeszcze projektu Firebase ani aplikacji Firebase, postępuj zgodnie z Przewodnik dla początkujących z Firebase: Dodaj Firebase do projektu C++.
Sprawdź, czy w projekcie Firebase jest włączona funkcja Google Analytics:
Jeśli tworzysz nowy projekt Firebase, włącz funkcję Google Analytics podczas tworzenia projektu.
Jeśli masz już projekt Firebase, który nie zawiera Włączono Google Analytics, możesz włączyć Google Analytics w Integracje na karcie
. > Ustawienia projektu
Krok 1. Skonfiguruj aplikację na koncie AdMob
Zarejestruj każdą wersję platformy swojej aplikacji jako aplikację AdMob.
Zaloguj się lub zarejestruj się AdMob konto.
Zarejestruj wersję każdej platformy aplikacji w: AdMob Ten tworzy aplikację AdMob z unikalnym parametrem AdMob Identyfikator aplikacji które będą potrzebne w dalszej części tego przewodnika.
Pojawi się prośba o dodanie pakietu SDK Mobile Ads do aplikacji. Znajdź dotyczące tego zadania znajdziesz w dalszej części tego przewodnika.
Połącz każdą z AdMob aplikacji z odpowiednią aplikacją Firebase.
Ten krok jest opcjonalny, ale zdecydowanie zalecany. Dowiedz się więcej o korzyści włączenia danych o użytkownikach i połączenia aplikacji w systemie AdMob z Firebase.
W przypadku każdego wariantu platformy wykonaj te 2 czynności na stronie Aplikacje panel na koncie AdMob:
Włącz Dane o użytkownikach aby umożliwić usłudze AdMob przetwarzanie i wyświetlanie wybranych statystyk AdMob konto. Konieczne jest też ustawienie, aby połączyć AdMob aplikację do Firebase.
Połącz Aplikacja AdMob do istniejącego projektu Firebase i odpowiadającej mu aplikacji Firebase.
Upewnij się, że wpisujesz tę samą nazwę pakietu (Android) lub identyfikator pakietu. (iOS) zgodnie z podaną przez Ciebie nazwą aplikacji Firebase. Znajdź w swojej aplikacji Firebase nazwę pakietu lub identyfikator pakietu na karcie Twoje aplikacje na koncie
Ustawienia projektu
Krok 2. Dodaj do aplikacji identyfikator aplikacji AdMob
Android
Dodaj:
Identyfikator aplikacji AdMob
do pliku AndroidManifest.xml
aplikacji, dodając tag <meta-data>
jako
poniżej.
<manifest>
<application>
<!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 -->
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ADMOB_APP_ID"/>
</application>
</manifest>
iOS
W pliku Info.plist
aplikacji dodaj klucz GADApplicationIdentifier
ze znakiem
parametru
Identyfikator aplikacji AdMob.
Możesz wprowadzić tę zmianę automatycznie:
<!-- Sample AdMob App ID: ca-app-pub-3940256099942544~1458002511 -->
<key>GADApplicationIdentifier</key>
<string>ADMOB_APP_ID</string>
Możesz też edytować ją w edytorze listy właściwości:
Krok 3. Dodaj pakiet SDK do reklam mobilnych Google
Pakiet SDK do reklam mobilnych Google w języku C++ znajduje się w przestrzeni nazw firebase::gma
,
pobierz pakiet Firebase C++ SDK,
a następnie rozpakuj go do wybranego katalogu.
Pakiet Firebase C++ SDK nie jest związany z konkretną platformą, ale wymaga z konfiguracjami bibliotek na poszczególnych platformach.
Android
W pliku
gradle.properties
projektu określ lokalizację rozpakowany pakiet SDK:systemProp.firebase_cpp_sdk.dir=FULL/PATH/TO/SDK
Do pliku
settings.gradle
projektu dodaj tę treść:def firebase_cpp_sdk_dir = System.getProperty('firebase_cpp_sdk.dir') gradle.ext.firebase_cpp_sdk_dir = "$firebase_cpp_sdk_dir" includeBuild "$firebase_cpp_sdk_dir"
Do pliku Gradle modułu (na poziomie aplikacji) (zwykle
app/build.gradle
) dodaj parametr tej treści, która obejmuje zależność biblioteki C++ SDK do reklam mobilnych Google.android.defaultConfig.externalNativeBuild.cmake { arguments "-DFIREBASE_CPP_SDK_DIR=$gradle.firebase_cpp_sdk_dir" } # Add the dependency for the Google Mobile Ads C++ SDK apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle" firebaseCpp.dependencies { gma }
Do pliku
CMakeLists.txt
projektu dodaj poniższą treść.# Add Firebase libraries to the target using the function from the SDK. add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL) # Add the Google Mobile Ads C++ SDK. # The Firebase C++ library `firebase_app` is required, # and it must always be listed last. set(firebase_libs firebase_gma firebase_app ) target_link_libraries(${target_name} "${firebase_libs}")
Zsynchronizuj aplikację, aby mieć pewność, że wszystkie zależności mają niezbędne wersje.
To już wszystko Twoja aplikacja w języku C++ jest skonfigurowana tak, aby używać pakietu SDK do reklam mobilnych Google w języku C++.
iOS
W tej sekcji pokazano, jak dodać pakiet SDK do reklam mobilnych Google w języku C++ do projektu iOS.
Pobierz CocoaPods w wersji 1 lub nowszej, uruchamiając polecenie:
sudo gem install cocoapods --pre
Dodaj Google Mobile Ads pod z rozpakowanego pakietu SDK.
Utwórz plik Podfile, jeśli jeszcze go nie masz:
cd YOUR_APP_DIRECTORY
pod init
Do pliku Podfile dodaj blok dla pakietu SDK C++ do reklam mobilnych Google:
pod 'Google-Mobile-Ads-SDK'
Zainstaluj poda, a następnie otwórz plik
.xcworkspace
w Xcode.pod install
open YOUR_APP.xcworkspace
Dodaj do projektu te platformy z pakietu SDK Firebase C++ SDK:
xcframeworks/firebase.xcframework
xcframeworks/firebase_gma.xcframework
To już wszystko Twoja aplikacja w języku C++ jest skonfigurowana tak, aby używać pakietu SDK do reklam mobilnych Google w języku C++.
Krok 4. Zainicjuj pakiet SDK do reklam mobilnych Google
Przed wczytaniem reklam zainicjuj pakiet SDK Mobile Ads, wywołując
firebase::gma::Initialize()
To wywołanie zwraca żądanie firebase::Future
, które kończy się po zainicjowaniu
po zakończeniu (lub po 30-sekundowym czasie oczekiwania). Wywołaj tę metodę tylko raz i jako
jak najwcześniej, najlepiej przy wprowadzaniu aplikacji na rynek.
Oto przykład, jak zadzwonić pod numer Initialize()
:
Android
// Initialize the Google Mobile Ads library firebase::InitResult result; Future<AdapterInitializationStatus> future = firebase::gma::Initialize(jni_env, j_activity, &result); if (result != kInitResultSuccess) { // Initialization immediately failed, most likely due to a missing dependency. // Check the device logs for more information. return; } // Monitor the status of the future. // See "Use a Future to monitor the completion status of a method call" below. if (future.status() == firebase::kFutureStatusComplete && future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization completed. } else { // Initialization on-going, or an error has occurred. }
iOS
// Initialize the Google Mobile Ads library. firebase::InitResult result; Future<AdapterInitializationStatus> future = firebase::gma::Initialize(&result); if (result != kInitResultSuccess) { // Initialization immediately failed, most likely due to a missing dependency. // Check the device logs for more information. return; } // Monitor the status of the future. // See "Use a Future to monitor the completion status of a method call" below. if (future.status() == firebase::kFutureStatusComplete && future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization completed. } else { // Initialization on-going, or an error has occurred. }
Użyj Future
do monitorowania stanu zakończenia wywołania metody
Future
pozwala określić stan ukończenia
asynchronicznych wywołań metod.
Na przykład, gdy aplikacja zadzwoni pod numer firebase::gma::Initialize()
, zostanie wyświetlony nowy
Element firebase::Future
został utworzony i zwrócony. Aplikacja może wtedy przeprowadzać ankiety
status()
z Future
, aby określić czas zakończenia inicjowania.
Po zakończeniu aplikacja może wywołać metodę result()
, aby uzyskać wynik
AdapterInitializationStatus
Metody, które zwracają wartość Future
, mają odpowiedni „ostatni wynik” które
aplikacje, których mogą używać do pobierania najnowszych danych z kategorii Future
dla danego działania. Dla:
funkcji firebase::gma::Initialize()
ma odpowiednią metodę o nazwie
firebase::gma::InitializeLastResult()
, który zwraca błąd Future
ustawiony przez Twoją aplikację
może użyć do sprawdzenia stanu ostatniego połączenia z firebase::gma::Initialize()
.
Jeśli stan usługi Future
jest zakończony, a jego kod błędu to
firebase::gma::kAdErrorCodeNone
, operacja została zakończona
.
Możesz też zarejestrować wywołania zwrotne, które mają być wywoływane po zakończeniu Future
. W
w niektórych przypadkach wywołanie zwrotne będzie uruchamiane w innym wątku, więc upewnij się,
czyli kod powinien być
bezpieczny w wątkach. Ten fragment kodu wykorzystuje wskaźnik funkcji dla atrybutu
wywołanie zwrotne:
// Registers the OnCompletion callback. user_data is a pointer that is passed verbatim
// to the callback as a void*. This allows you to pass any custom data to the callback
// handler. In this case, the app has no data, so you must pass nullptr.
firebase::gma::InitializeLastResult().OnCompletion(OnCompletionCallback,
/*user_data=*/nullptr);
// The OnCompletion callback function.
static void OnCompletionCallback(
const firebase::Future<AdapterInitializationStatus>& future, void* user_data) {
// Called when the Future is completed for the last call to firebase::gma::Initialize().
// If the error code is firebase::gma::kAdErrorCodeNone,
// then the SDK has been successfully initialized.
if (future.error() == firebase::gma::kAdErrorCodeNone) {
// success!
} else {
// failure.
}
}
Krok 5: wybierz format reklamy do zaimplementowania w aplikacji
AdMob oferuje wiele różnych formatów reklam, możesz więc wybrać format, najlepiej sprawdzi się w przypadku użytkowników, którzy korzystają z Twojej aplikacji. Kliknij przycisk formatu reklamy, aby wyświetl szczegółowe instrukcje implementacji w dokumentacji AdMob.
Baner
Prostokątne reklamy wyświetlane u góry lub u dołu ekranu urządzenia
Banery reklamowe pozostają na ekranie, gdy użytkownicy wchodzą w interakcję z aplikacją i mogą są odświeżane automatycznie po upływie określonego czasu. Jeśli dopiero zaczynasz korzystać z urządzeń mobilnych reklamy, to dobry punkt wyjścia.
Implementowanie banerów reklamowychPełnoekranowa
Reklamy pełnoekranowe zasłaniające interfejs aplikacji do momentu zamknięcia przez użytkownika
Reklamy pełnoekranowe najlepiej działają w naturalnych przerwach w przepływie np. między poziomami gry lub tuż po ukończeniu zadania.
Zastosuj reklamy pełnoekranoweZ nagrodą
Reklamy, które nagradzają użytkowników za oglądanie krótkich filmów i wchodzenie w interakcję z grami reklamy i ankiety
Reklamy z nagrodą mogą pomóc użytkownikom w zarabianiu na bezpłatnych grach.
Inne interesujące tematy
Wyświetlanie danych o użytkownikach i danych analitycznych
Po zainicjowaniu pakiet SDK Mobile Ads uruchomi się automatycznie analiza logów wydarzeń i właściwości użytkownika z aplikacji. Możesz wyświetlać te dane bez dodawania dodatkowego kodu do aplikacji lub implementacji jakichkolwiek reklam. Oto gdzie możesz zobaczyć te dane analityczne:
na karcie Dane o użytkownikach na koncie AdMob (Strona główna lub Aplikacje); panelu), można wyświetlić wybranego użytkownika danych pochodzących z zebrane dane analityczne, np. średni czas trwania sesji, ARPU i utrzymanie.
W Statystykach panel w konsoli Firebase możesz wyświetlać zbiorcze statystyki i podsumowania kluczowe dane. Jeśli dodaj pakiet SDK Firebase dla aplikacji Google Analytics, możesz też oznaczanie konwersji w kampaniach reklamowych oraz utwórz grupy odbiorców niestandardowych w konsoli Firebase.
Pamiętaj, że aby lepiej przedstawić
ARPU oraz
ARPPU,
możesz uwzględnić dane z niestandardowego zdarzenia Analytics o nazwie
ecommerce_purchase
są uwzględniane w obliczeniach przychodu dla tych danych,
(dowiedz się, jak to zrobić).
(Opcjonalnie) Korzystanie z dodatkowych funkcji Google Analytics i Firebase
Korzystaj z dodatkowych możliwości i funkcji, aby zwiększać przychody z aplikacji zaangażowanie użytkowników:
Dodawanie i używanie pakietu SDK Firebase dla aplikacji Google Analytics
Wdrażanie rejestrowania zdarzeń niestandardowych. w aplikacji.
Oznacz konwersje dla reklamy niestandardowej
Uwzględnij
ecommerce_purchase
zdarzenie danych w przychodach. obliczanie dla ARPU oraz Dane ARPPU.
Więcej informacji znajdziesz w przewodniku dotyczącym używania Google Analytics i Firebase z AdMob aplikacjami.
Używanie innych usług Firebase w aplikacji
Po dodaniu pakietu SDK Firebase dla aplikacji Google Analytics użyj innej usługi Firebase usług optymalizacji reklam w aplikacji.
Remote Config umożliwia zmianę działania i wyglądu aplikacji bez publikowania aktualizacji – bezpłatnie, nieograniczona liczba aktywnych użytkowników dziennie.
A/B Testing umożliwia testowanie zmian w interfejsu aplikacji, jej funkcji oraz kampanii budujących zaangażowanie, aby sprawdzić, wpływ na kluczowe dane (takie jak przychody i utrzymanie użytkowników) przed rozpoczęciem znacznie się zmieniają.