Intereting Posts
Как скрыть индикатор ExpandableListView для групп без детей Состояние экземпляра восстановления android для фрагмента, который находится в задней части Android EditText.setError () дает невидимый текст ошибки Символ не найден на OnActionExpandListener Остановить программный щелчок мышью в программном обеспечении Android Как использовать подготовленные инструкции в SQlite в Android? Get " connect: уже подключенная" ошибка, если я рисую растровое изображение в качестве фона SurfaceView, а затем воспроизвожу видео Правильная реализация SearchView в панели инструментов Android Как загрузить растровое изображение в изображение с помощью Picasso Есть ли стандарт документации для пользовательских атрибутов стиля XML в Android? Максимальная емкость хранилища SQLite Как использовать целые ресурсы в строковых ресурсах в android Невозможно разрешить хост «<insert URL here>» Нет адреса, связанного с именем хоста Обработка изменений идентификатора регистрации в Google Cloud Messaging на Android Установите addTextChangedListener в функцию Android

Отключить Google Analytics при разработке

Мой вопрос довольно прост: можно ли автоматически отключать Google Analytics, когда приложение подписывается с сертификатом отладки? Означает, что он должен быть активным только в версии выпуска. Заранее спасибо.

Solutions Collecting From Web of "Отключить Google Analytics при разработке"

Если вы используете ADT 17 и выше, вы можете использовать класс BuildConfig:

if(BuildConfig.DEBUG) { GoogleAnalytics googleAnalytics = GoogleAnalytics.getInstance(getApplicationContext()); googleAnalytics.setAppOptOut(true); } 

Класс BuildConfig генерируется автоматически, как R.java . Он содержит только логическое значение DEBUG , которое по умолчанию установлено в true , а false при экспорте apk.

Ну, вы можете настроить его так, чтобы он не был достаточно активным:

 if (...) { GoogleAnalytics ga= GoogleAnalytics.getInstance(getApplicationContext()); ga.setAppOptOut(true); } 

Обычно я просто проверяю серийный номер оборудования некоторых известных устройств, используемых для тестирования:

 if (Arrays.asList("x", "y").contains(getHardwareSerial())) 

Где getHardwareSerial() :

 public static String getHardwareSerial() { try { Field serialField = Build.class.getDeclaredField("SERIAL"); return (String) serialField.get(null); } catch (NoSuchFieldException nsf) { } catch (IllegalAccessException ia) { } return Build.UNKNOWN; } 

В последней версии Google Analytics вы должны использовать следующий код:

 if(BuildConfig.DEBUG){ GoogleAnalytics.getInstance(this).setDryRun(true); }