Как отключить инспектор объявлений

Инспектор объявлений позволяет проверять поведение объявлений во время разработки, тестирования и устранения неполадок, но при его использовании может увеличиться объем использования памяти. Рекомендуем отключать инспектор объявлений при профилировании производительности и проверке памяти. Это гарантирует, что инспектор объявлений не будет работать и мешать измерению производительности приложения.

Если отключить инспектор объявлений, он не будет увеличивать использование памяти и запускаться с помощью жестов, меню отладки или вызовов методов. Вы можете отключить инспектор объявлений во время тестирования производительности в тестовом режиме. В рабочей версии инспектор объявлений всегда отключен и не влияет на производительность приложения.

В этом руководстве рассказывается, как отключить инспектор объявлений и проверить, что он отключен.

Требования

Прежде чем продолжить, выполните следующие действия:

Как отключить с помощью типов сборки

Чтобы инспектор объявлений был доступен в отладочных сборках, но не в сборках для профилирования, настройте конфигурацию сборки с помощью типов сборки Gradle и плейсхолдеров манифеста. Выполните следующие действия:

  1. Определите свойства manifestPlaceholders в файле сборки Gradle.

  2. Назначьте значения для каждого типа сборки. В следующем примере определяется ключ disableAdInspector и создается тип сборки profile, который наследует тип сборки release. В этом примере также задается значение ключа true для сборок профиля и значение false для отладочных и конечных сборок.

    Kotlin

    android {
        buildTypes {
            getByName("debug") {
                manifestPlaceholders["disableAdInspector"] = "false"
            }
            getByName("release") {
                optimization {
                    enable = false
                }
                manifestPlaceholders["disableAdInspector"] = "false"
            }
            create("profile") {
                initWith(getByName("release"))
                manifestPlaceholders["disableAdInspector"] = "true"
            }
        }
    }

    Groovy

    android {
        buildTypes {
            release {
                manifestPlaceholders = [disableAdInspector: "false"]
            }
            debug {
                manifestPlaceholders = [disableAdInspector: "false"]
            }
            create("profile") {
                initWith(getByName("release"))
                manifestPlaceholders = [disableAdInspector: "true"]
            }
        }
    }
  3. Укажите переменную-плейсхолдер в файле манифеста приложения. В примере ниже используется плейсхолдер disableAdInspector, который вы определили на предыдущем шаге.

    <application>
    <!-- Dynamically enable or disable ad inspector based on build type -->
    <meta-data
        android:name=
        "com.google.android.libraries.ads.mobile.sdk.flag.DISABLE_AD_INSPECTOR"
        android:value="${disableAdInspector}" />
    </application>
    

Как проверить, что функция отключена

Если вы попытаетесь открыть инспектор объявлений, когда он отключен в файле AndroidManifest.xml, в Logcat появится следующее сообщение:

Ad inspector is disabled in the AndroidManifest.xml.

При вызове метода MobileAds.openAdInspector в обратном вызове возвращается объект AdInspectorError, который сообщает приложению, что инспектор объявлений не может открыться.

Ad inspector cannot be opened because it is disabled in the AndroidManifest.xml.