我有一个应用程序,它是模块化的,支持即时应用程序。
应用程序模块:
- app - instantapp - base - main - detail - search
我尝试通过添加以下内容来添加Firebase:
- classpath '
当我运行非即时应用程序时,我收到以下错误:
I/FirebaseInitProvider: FirebaseApp初始化失败 E/FA: GoogleService初始化失败,状态:10,缺少名称为google_app_id的字符串资源中的google app id值。 I/FA: 应用测量正在启动,版本:11720 I/FA: 要启用调试日志记录,请运行:adb shell setprop log.tag.FA VERBOSE I/FA: 要启用更快的调试模式事件日志记录,请运行: adb shell setprop debug.firebase.analytics.app com.punpuf.chacaraselazer.app E/FA: 缺少google_app_id。 Firebase Analytics已禁用。请参见https://goo(...) E/FA: 上传不可能。应用测量已禁用 I/FA: 未找到标签管理器,因此不会使用
当我运行即时应用程序时,我收到以下错误:
V/FA: 取消作业。 JobID:1799580119 E/FirebaseApp:Firebase API初始化失败。(...)Caused by:java.lang.NullPointerException:尝试在空对象引用上调用接口方法'void android.app.job.IJobScheduler.cancel(int)' I/FirebaseInitProvider:FirebaseApp初始化成功
如果我添加以下行:“
E/AndroidRuntime:致命异常:主进程:com.punpuf.chacaraselazer.app,PID:11273 java.lang.RuntimeException:无法启动活动ComponentInfo {(...)}:java.lang.NullPointerException:尝试在空对象引用上调用接口方法'void android.app.job.IJobScheduler.cancel(int)'
所以我的问题是如何使Firebase Analytics正常工作,并且不会在我的应用程序的即时和非即时版本中崩溃。
尽管此问题与 FirebaseApp initialization unsuccessful in Android Instant apps 有些相似,但我的问题并不包含相同类型的错误。
更新: 我创建了一个新的 Firebase 项目,并更新了我的 google-services.json,但仍然无法工作。
下面是我的 gradle 文件:
- 项目: https://gist.github.com/Punpuf/8582fa3610a1c3dea13627e1207a6064 - 应用: https://gist.github.com/Punpuf/2104ffe0c90927cb79944860a7cb6c46 - Instant App: https://gist.github.com/Punpuf/233d96e91293a2a14e8fdf50092edd2d - Base: https://gist.github.com/Punpuf/e1646f67d8a6094773c390d2df209eae - 主要: https://gist.github.com/Punpuf/f8bdd8789b11d274afdb1c51f490ed25 - 细节: https://gist.github.com/Punpuf/0a4f87b4fb512557ffe6cd110ce667de - 搜索: https://gist.github.com/Punpuf/455e28b38baad23294dda6c9592586a2 我还尝试用 Firebase Messaging 替换 Firebase Analytics 依赖项,但仍然收到了 "FirebaseApp initialization unsuccessful" 错误。
应用程序模块:
- app - instantapp - base - main - detail - search
我尝试通过添加以下内容来添加Firebase:
- classpath '
com.google.gms:google-services:3.1.1
' → 添加到项目级别build.gradle
- api "com.google.firebase:firebase-core:${versions.firebase}
" → 添加到Base模块中
- apply plugin: 'com.google.gms.google-services
' → 添加到Base Module的底部
- google-services.json → 添加到基础模块文件夹中当我运行非即时应用程序时,我收到以下错误:
I/FirebaseInitProvider: FirebaseApp初始化失败 E/FA: GoogleService初始化失败,状态:10,缺少名称为google_app_id的字符串资源中的google app id值。 I/FA: 应用测量正在启动,版本:11720 I/FA: 要启用调试日志记录,请运行:adb shell setprop log.tag.FA VERBOSE I/FA: 要启用更快的调试模式事件日志记录,请运行: adb shell setprop debug.firebase.analytics.app com.punpuf.chacaraselazer.app E/FA: 缺少google_app_id。 Firebase Analytics已禁用。请参见https://goo(...) E/FA: 上传不可能。应用测量已禁用 I/FA: 未找到标签管理器,因此不会使用
当我运行即时应用程序时,我收到以下错误:
V/FA: 取消作业。 JobID:1799580119 E/FirebaseApp:Firebase API初始化失败。(...)Caused by:java.lang.NullPointerException:尝试在空对象引用上调用接口方法'void android.app.job.IJobScheduler.cancel(int)' I/FirebaseInitProvider:FirebaseApp初始化成功
如果我添加以下行:“
FirebaseAnalytics.getInstance(this)
”,它不仅会收到之前的错误,而且还会崩溃:E/AndroidRuntime:致命异常:主进程:com.punpuf.chacaraselazer.app,PID:11273 java.lang.RuntimeException:无法启动活动ComponentInfo {(...)}:java.lang.NullPointerException:尝试在空对象引用上调用接口方法'void android.app.job.IJobScheduler.cancel(int)'
所以我的问题是如何使Firebase Analytics正常工作,并且不会在我的应用程序的即时和非即时版本中崩溃。
尽管此问题与 FirebaseApp initialization unsuccessful in Android Instant apps 有些相似,但我的问题并不包含相同类型的错误。
更新: 我创建了一个新的 Firebase 项目,并更新了我的 google-services.json,但仍然无法工作。
下面是我的 gradle 文件:
- 项目: https://gist.github.com/Punpuf/8582fa3610a1c3dea13627e1207a6064 - 应用: https://gist.github.com/Punpuf/2104ffe0c90927cb79944860a7cb6c46 - Instant App: https://gist.github.com/Punpuf/233d96e91293a2a14e8fdf50092edd2d - Base: https://gist.github.com/Punpuf/e1646f67d8a6094773c390d2df209eae - 主要: https://gist.github.com/Punpuf/f8bdd8789b11d274afdb1c51f490ed25 - 细节: https://gist.github.com/Punpuf/0a4f87b4fb512557ffe6cd110ce667de - 搜索: https://gist.github.com/Punpuf/455e28b38baad23294dda6c9592586a2 我还尝试用 Firebase Messaging 替换 Firebase Analytics 依赖项,但仍然收到了 "FirebaseApp initialization unsuccessful" 错误。