
我目前正在开发一个现有的Android应用程序,以便创建即时应用程序版本.
我的AndroID Studio现在分为几个模块:
>业务对象模块(这是一个库)
> base -feature-模块
> moduleA -feature-模块
> app模块(手机/平板电脑模块)
>即时模块(即时应用程序模块)
我的即时应用程序模块可以在手机/平板电脑上编译和启动,但每次因Firebase问题而崩溃.我在logcat中有以下消息:
I/FirebaseInitProvIDer: FirebaseApp initialization unsuccessful
根据documentation,Firebase库与Instant Apps兼容,但我很确定我不会将Google-services.Json文件移动到我项目中的正确位置…
在这里我做了什么:
>我将以下类路径依赖项定义到AndroID Studio项目的build.gradle文件中:classpath’com.Google.gms:Google-services:3.1.1′
>我将Google-services.Json文件放入我的模块库中(因为文档要求它)
现在,如果我尝试将插件(应用插件:’com.Google.gms.Google-services’)应用到基本模块的build.gradle文件中,我无法编译.我有以下消息:
Error:Execution Failed for task ‘:base:processGooglePlayProductionDeBUGFeatureGoogleServices’.
> No matching clIEnt found for package name ‘com.mycompany.myapp.base’
实际上,定义到Google-services.Json文件中的包名称是应用程序使用的一个(因为根据documentation,基本库不能与安装的AndroID应用程序具有相同的包名称.
我还尝试将插件应用到已安装应用程序的build.gradle文件中,并应用到即时应用程序模块中,将Google-services.Json文件保留到基本模块中.应用程序编译,但我有日志:“FirebaseApp初始化失败”.
所以我尝试将Google-services.Json文件移动到我的即时应用模块中,但我仍然有日志:“FirebaseApp初始化失败”
我还试图强制初始化从FirebaseApp类调用静态方法initializeApp,但日志仍然存在.
我无法在网上找到实施的例子.实际上,Google Sample repository不使用Google-services.Json文件.
预先感谢您的帮助 !
编辑:这里是我的模块的依赖项:
我的base -feature-模块的依赖关系:
implementation project(':businessobject') feature project(':moduleA') application project(':app')我的moduleA -feature-模块的依赖关系:
API project(':base')API project(':businessobject')我的应用模块(手机/平板电脑模块)的依赖关系:
implementation (project(':base'))implementation (project(':businessobject'))implementation (project(':moduleA'))我的即时模块(即即时应用模块)的依赖关系:
implementation project(':base')implementation project(':businessobject')implementation project(':moduleA')解决方法:
because according to the documentation the base library cannot have
the same package name as the installed androID app.
我认为文档有点过时了.每个“功能”模块都需要使用不同的包名,因为这是用于生成R类名称的内容. AFAIK没有理由不能让“基本”功能使用与应用程序本身相同的包名.
似乎需要为“功能”插件更新“Google-services”插件,以使用应用程序ID而不是AndroIDManifest.xml中指定的名称(稍后将覆盖该名称与应用程序ID相同).
tl; dr —将“base”的包名改为“com.mycompany.myapp”应该让事情有效.
总结以上是内存溢出为你收集整理的FirebaseApp初始化在Android Instant应用程序中失败全部内容,希望文章能够帮你解决FirebaseApp初始化在Android Instant应用程序中失败所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)