Java Unity3D-由于安装Firebase Messaging SDK失败而导致Android崩溃

Java Unity3D-由于安装Firebase Messaging SDK失败而导致Android崩溃,java,android,firebase,unity3d,firebase-cloud-messaging,Java,Android,Firebase,Unity3d,Firebase Cloud Messaging,我尝试将Firebase Messaging SDK设置到我的Unity 2017.4项目中 我选择要安装的dot net 3库 构建已成功,但当我尝试启动应用程序时,它会崩溃 根据日志,我得到: 12-02 16:40:57.237 4542 4542 E AndroidRuntime:进程:com.snowyapps.belajarabc,PID:4542 12-02 16:40:57.237 4542 4542 E AndroidRuntime:java.lang.RuntimeExcep

我尝试将Firebase Messaging SDK设置到我的Unity 2017.4项目中

我选择要安装的dot net 3

构建已成功,但当我尝试启动应用程序时,它会崩溃

根据日志,我得到:

12-02 16:40:57.237 4542 4542 E AndroidRuntime:进程:com.snowyapps.belajarabc,PID:4542

12-02 16:40:57.237 4542 4542 E AndroidRuntime:java.lang.RuntimeException:无法实例化活动 ComponentInfo{com.snowyapps.belajarabc/com.google.firebase.messagingunityplayepractivity}:java.lang.ClassNotFoundException:在路径:DexPathList[[zip文件”/data/app/com.snowyapps.belajarabc-1/base.apk]的NativeLibrary目录中未找到类“com.google.firebase.messagingunityplayepractivity”=[/data/app/com.snowyapps.belajarabc-1/lib/arm64,/data/app/com.snowyapps.belajarabc-1/base.apk!/lib/arm64-v8a,/system/lib64,/vendor/lib64]]

12-02 16:40:57.237 4542 4542 E AndroidRuntime:at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2819)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2988)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:在android.app.ActivityThread.-wrap14(ActivityThread.java)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1631)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:at android.os.Handler.dispatchMessage(Handler.java:102)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:at android.os.Looper.loop(Looper.java:154)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:at android.app.ActivityThread.main(ActivityThread.java:6682)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:at java.lang.reflect.Method.invoke(本机方法)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:com.android.internal.os.ZygoteInit$methodAndArgscaler.run(ZygoteInit.java:1520)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:原因:java.lang.ClassNotFoundException:在路径:DexPathList[[zip文件”/data/app/com.snowyapps.belajarabc-1/base.apk]的NativeLibrary目录中未找到类“com.google.firebase.Messagingunityplayepractivity”=[/data/app/com.snowyapps.belajarabc-1/lib/arm64,/data/app/com.snowyapps.belajarabc-1/base.apk!/lib/arm64-v8a,/system/lib64,/vendor/lib64]]

12-02 16:40:57.237 4542 4542 E AndroidRuntime:at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:at java.lang.ClassLoader.loadClass(ClassLoader.java:380)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:at java.lang.ClassLoader.loadClass(ClassLoader.java:312)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:at android.app.Instrumentation.newActivity(Instrumentation.java:1086)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2809)

12-02 16:40:57.237 4542 4542 E AndroidRuntime:…9更多

有办法解决这个问题吗


谢谢…

通过软件包管理器安装所有需要的Firebase软件包,而不是导入
。unitypackage
文件为我解决了这个问题。我的一些软件包是通过软件包管理器安装的,有些是通过导入安装的,这显然造成了某种依赖关系混乱

转到您的软件包管理器(窗口->软件包管理器)并搜索Firebase。确保在左上角的下拉列表中选择了“所有软件包”选项。如果您需要的任何软件包未在管理器中标记为已安装,请安装它


如果在重新安装软件包后,在GUID冲突方面出现错误,只需删除Assets文件夹中发生冲突的文件,并保留packages文件夹中的文件。

以下几点有助于找到解决方案:1)是否启用了play services resolver?是否可以强制运行它?请参阅本文:2)您是否在使用Google play services的设备上(即:谷歌游戏商店?)3您是否有任何后处理钩子可能与play services解析器冲突或以非标准方式构建游戏?看起来您缺少一个Jar/Aar存档,因此我试图找出play services解析器可能失败的原因。@Pux0r3在第3点,我通过将unity导出到android项目来构建,然后构建AppBundle。对于firebase analytics没有问题,只有firebase messanger。在这种情况下,如果您进行正常的构建/运行(而不是导出),它是否有效。您是否使用mainTemplate.gradle(再次,请参阅我上面提供的链接)?如果有人在包中找不到firebase,您需要将注册表添加到清单文件,请参阅