Интеграция Google Mobile Ads SDK в приложение — это первый шаг к показу рекламы и получению дохода. После интеграции SDK вы можете выбрать формат рекламы (например, нативное видео или видео с вознаграждением) и выполнить шаги по его реализации.
Прежде чем вы начнете
Чтобы подготовить приложение, выполните действия, описанные в следующих разделах.
Требования к приложению
- Используйте Android Studio 3.2 или выше
Убедитесь, что в файле сборки вашего приложения используются следующие значения:
-
minSdkVersion
19
или выше -
compileSdkVersion
28
или выше
-
Настройте приложение в своем аккаунте AdMob.
Зарегистрируйте свое приложение как приложение AdMob, выполнив следующие действия:
Войдите или зарегистрируйте аккаунт AdMob.
Зарегистрируйте свое приложение в AdMob . На этом шаге создается приложение AdMob с уникальным идентификатором приложения AdMob , который понадобится далее в этом руководстве.
Настройте свое приложение
В файле
build.gradle
на уровне проекта включите репозиторий Google Maven и центральный репозиторий Maven как вbuildscript
и в разделыallprojects
:buildscript { repositories { google() mavenCentral() } } allprojects { repositories { google() mavenCentral() } }
Добавьте зависимости для Google Mobile Ads SDK в файл Gradle вашего модуля на уровне приложения, обычно
app/build.gradle
:dependencies { implementation 'com.google.android.gms:play-services-ads:21.5.0' }
Добавьте идентификатор приложения AdMob ( указанный в пользовательском интерфейсеAdMob ) в файл
AndroidManifest.xml
вашего приложения. Для этого добавьте<meta-data>
сandroid:name="com.google.android.gms.ads.APPLICATION_ID"
. Идентификатор вашего приложения можно найти в пользовательском интерфейсе AdMob . Дляandroid:value
введите свой собственный идентификатор приложения AdMob , заключенный в кавычки.<manifest> <application> <!-- Sample AdMob app ID: ca-app-pub-3940256099942544~3347511713 --> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/> </application> </manifest>
В реальном приложении используйте фактический идентификатор приложения AdMob , а не указанный выше. Если вы просто хотите поэкспериментировать с SDK в приложении Hello World, вы можете использовать идентификатор примера приложения, показанный выше.
Также обратите внимание, что отказ от добавления
<meta-data>
, как показано выше, приводит к сбою с сообщением:The Google Mobile Ads SDK was initialized incorrectly.
(Необязательно)
AD_ID
разрешение AD_ID для предыдущих версий для работы с Android 13.Если ваше приложение использует SDK Google Mobile Ads версии 20.4.0 или выше, вы можете пропустить этот шаг, так как SDK автоматически объявляет разрешение
com.google.android.gms.permission.AD_ID
и может получить доступ к идентификатору рекламы, когда он доступен. .Для приложений, использующих Google Mobile Ads SDK версии 20.3.0 или более ранней и предназначенных для Android 13, необходимо добавить разрешение
com.google.android.gms.permission.AD_ID
в файлAndroidManifest.xml
для Google Mobile Ads SDK, чтобы получить доступ к идентификатору рекламы:<manifest> <application> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/> <-- For apps targeting Android 13 or higher & GMA SDK version 20.3.0 or lower --> <uses-permission android:name="com.google.android.gms.permission.AD_ID"/> </application> </manifest>
Чтобы узнать больше о разрешении
com.google.android.gms.permission.AD_ID
, в том числе о том, как его отключить, обратитесь к этой статье Play Console .
Инициализируйте Google Mobile Ads SDK
Перед загрузкой объявлений попросите ваше приложение инициализировать SDK Google Mobile Ads, вызвав MobileAds.initialize()
, который инициализирует SDK и вызывает прослушиватель завершения после завершения инициализации (или после 30-секундного тайм-аута). Это нужно сделать только один раз, в идеале при запуске приложения.
Объявления могут быть предварительно загружены SDK Google Mobile Ads или SDK партнеров-посредников при вызове MobileAds.initialize()
. Если вам нужно получить согласие от пользователей в Европейской экономической зоне (ЕЭЗ), установить какие-либо флаги для конкретного запроса (например, tagForChildDirectedTreatment
или tag_for_under_age_of_consent
) или предпринять другие действия перед загрузкой рекламы, убедитесь, что вы делаете это до инициализации Google Mobile Ads SDK. .
Вот пример того, как вызвать метод initialize()
в Activity:
Пример MainActivity (отрывок)
Джава
import com.google.android.gms.ads.MobileAds; import com.google.android.gms.ads.initialization.InitializationStatus; import com.google.android.gms.ads.initialization.OnInitializationCompleteListener; public class MainActivity extends AppCompatActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); MobileAds.initialize(this, new OnInitializationCompleteListener() { @Override public void onInitializationComplete(InitializationStatus initializationStatus) { } }); } }
Котлин
import com.google.android.gms.ads.MobileAds class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) MobileAds.initialize(this) {} } }
Если вы используете посредничество, подождите, пока не будет вызван обработчик завершения, прежде чем загружать объявления, так как это обеспечит инициализацию всех адаптеров посредничества.
Выберите формат объявления
Google Mobile Ads SDK теперь импортирован, и вы готовы реализовать рекламу.AdMob предлагает несколько различных форматов объявлений, поэтому вы можете выбрать тот, который лучше всего подходит для вашего приложения.
Баннер
Прямоугольные объявления, которые появляются вверху или внизу экрана устройства. Баннеры остаются на экране, пока пользователи взаимодействуют с приложением, и могут автоматически обновляться через определенный период времени. Если вы новичок в мобильной рекламе, это отличное место для начала.
межстраничный
Полноэкранная реклама, закрывающая интерфейс приложения до тех пор, пока пользователь не закроет ее. Их лучше всего использовать в естественных паузах в потоке выполнения приложения, например, между уровнями игры или сразу после завершения задачи.
Внедрить межстраничную рекламу
Родной
Настраиваемые объявления, которые соответствуют внешнему виду вашего приложения. Вы сами решаете, как и где их размещать, чтобы макет больше соответствовал дизайну вашего приложения.
Вознагражден
Объявления, которые вознаграждают пользователей за просмотр коротких видеороликов и взаимодействие с воспроизводимой рекламой и опросами. Используется для монетизации бесплатных приложений.
Реализуйте рекламу с вознаграждением
Дополнительные ресурсы
В репозитории Google Mobile Ads на GitHub показано, как использовать различные форматы рекламы, предлагаемые этим API.