Приложение, над которым я работаю, имеет очень индивидуальный процесс сборки.Невозможно использовать gradle для создания моего приложения.Это не идеально, но я ничего не могу изменить по этому поводу.Тем не менее, я хочу использовать Firebase Analytics в своем приложении.Включены модули firebase-core, firebase-common, firebase-analytics, firebase-analytics-impl, firebase-iid, firebase-iid-interop, разъем для измерения firebase, разъем для измерения firebase, разъем для измерения, инструмент для игры, play-services-Измерение базы и Play-Services-измерения-API.Я также добавил следующие строки в свой strings.xml
со значениями, которые я нашел в google-services.json
для моего проекта Firebase:
<string name="google_app_id" translatable="false">xxx</string>
<string name="gcm_defaultSenderId" translatable="false">xxx</string>
<string name="default_web_client_id" translatable="false">xxx</string>
<string name="firebase_database_url" translatable="false">xxx</string>
<string name="google_api_key" translatable="false">xxx</string>
<string name="google_crash_reporting_api_key" translatable="false">xxx</string>
<string name="project_id" translatable="false">xxx</string>
(как описано здесь ) и удалилFirebaseInitProvider
из AndroidManifest.В моих приложениях Application
класс onCreate()
я делаю:
FirebaseOptions.Builder builder = new FirebaseOptions.Builder()
.setApplicationId(getString(R.string.google_app_id))
.setApiKey(getString(R.string.google_api_key));
FirebaseApp.initializeApp(this, builder.build(), "[DEFAULT]");
Пока никаких проблем.Когда приведенный выше код выполняется, я получаю сообщение журнала отладки, в котором говорится:
FirebaseApp: com.google.firebase.auth.FirebaseAuth is not linked. Skipping initialization.
Хорошо, я не включил модуль auth.Мне не нужно это для моего приложения.Когда я вызываю FirebaseAnalytics.getInstance(adblockSettingsTextView.getContext()).getFirebaseInstanceId()
, он возвращает строковое значение, поэтому я предполагаю, что инициализация прошла успешно.
Теперь каждый раз, когда я хочу записать событие, подобное этому
Bundle bundle = new Bundle();
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "Dashboard");
FirebaseAnalytics.getInstance(this).logEvent(FirebaseAnalytics.Event.SELECT_CONTENT, bundle);
, я вижуошибка в моем журнале, говорящая Missing google_app_id. Firebase Analytics disabled. See https://firebase.google.com/docs/android/setup.
Кроме того, я не вижу активных пользователей на панели мониторинга Firebase Analytics.
Я прочитал все документы, которые смог найти, и изо всех сил старался найти причину этой проблемы.Но сейчас у меня нет больше идей, что я могу проверить или изменить, чтобы это работало.Помощь будет высоко ценится.Спасибо!