首页 > 解决方案 > Android Firebase Unity 有错误:Gradle 无法获取依赖项和解决失败,DllNotFoundException:FirebaseCppApp-5.2.0

问题描述

我需要一些帮助。我不能在 android 平台上使用 firebase。Resolve Android Resolver 时出现错误。我找不到任何解决我的问题的方法。我该如何解决这个问题。你可以帮助我或者你知道谁能帮助我

我的软件配置:

Firebase Unity SDK 5.2.0
Android NDK r13b
Android SDK Full Update
JDK 8u181
JRE 8u181
Windows 7
Unity 2018.2.1f1

统一日志文件

统一错误:

Gradle failed to fetch dependencies.

Failed to run 'C:\Users\Arman\Desktop\TestFireBaseUnity\Temp\PlayServicesResolverGradle\gradlew.bat -b "C:\Users\Arman\Desktop\TestFireBaseUnity\Temp\PlayServicesResolverGradle\PlayServicesResolver.scripts.download_artifacts.gradle" --no-daemon "-PANDROID_HOME=C:/Android_SDK" "-PTARGET_DIR=C:\Users\Arman\Desktop\TestFireBaseUnity\Assets\Plugins\Android" "-PMAVEN_REPOS=file:///C:/Users/Arman/Desktop/TestFireBaseUnity/Assets/Firebase/m2repository" "-PPACKAGES_TO_COPY=com.google.android.gms:play-services-base:15.0.1;com.google.firebase:firebase-common:16.0.0;com.google.firebase:firebase-core:16.0.1;com.google.firebase:firebase-app-unity:5.2.0;com.google.firebase:firebase-iid:16.2.0;com.google.firebase:firebase-messaging:17.1.0;com.google.firebase:firebase-messaging-unity:5.2.0"'
stdout:
Unzipping C:\Users\Arman\.gradle\wrapper\dists\gradle-4.2.1-bin\dajvke9o8kmaxbu0kc5gcgeju\gradle-4.2.1-bin.zip to C:\Users\Arman\.gradle\wrapper\dists\gradle-4.2.1-bin\dajvke9o8kmaxbu0kc5gcgeju

stderr:
Exception in thread "main" java.util.zip.ZipException: error in opening zip file
    at java.util.zip.ZipFile.open(Native Method)
    at java.util.zip.ZipFile.<init>(ZipFile.java:225)
    at java.util.zip.ZipFile.<init>(ZipFile.java:155)
    at java.util.zip.ZipFile.<init>(ZipFile.java:169)
    at org.gradle.wrapper.Install.unzip(Install.java:215)
    at org.gradle.wrapper.Install.access$600(Install.java:27)
    at org.gradle.wrapper.Install$1.call(Install.java:75)
    at org.gradle.wrapper.Install$1.call(Install.java:48)
    at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:69)
    at org.gradle.wrapper.Install.createDist(Install.java:48)
    at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:107)
    at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)

exit code: 1

UnityEngine.Debug:LogError(Object)
Google.Logger:Log(String, LogLevel)
GooglePlayServices.PlayServicesResolver:Log(String, LogLevel)
GooglePlayServices.<GradleResolution>c__AnonStorey0:<>m__0(Result)
GooglePlayServices.<GradleResolution>c__AnonStorey1:<>m__0()
Google.RunOnMainThread:ExecuteNext()
Google.RunOnMainThread:ExecuteAll()
Google.RunOnMainThread:Run(Action, Boolean)
GooglePlayServices.<GradleResolution>c__AnonStorey0:<>m__1(Result)
GooglePlayServices.<GradleResolution>c__AnonStorey0:<>m__2(Result)
GooglePlayServices.ProgressReporter:SignalComplete()
GooglePlayServices.ProgressReporter:Update(CommandLineDialog)
GooglePlayServices.CommandLineDialog:Update()
UnityEditor.EditorApplication:Internal_CallUpdateFunctions()

Gradle 的图像无法获取依赖项

Resolution failed

Failed to fetch the following dependencies:
com.google.android.gms:play-services-base:15.0.1
com.google.firebase:firebase-common:16.0.0
com.google.firebase:firebase-core:16.0.1
com.google.firebase:firebase-app-unity:5.2.0
com.google.firebase:firebase-iid:16.2.0
com.google.firebase:firebase-messaging:17.1.0
com.google.firebase:firebase-messaging-unity:5.2.0


UnityEngine.Debug:LogError(Object)
Google.Logger:Log(String, LogLevel)
GooglePlayServices.PlayServicesResolver:Log(String, LogLevel)
GooglePlayServices.ResolverVer1_1:LogMissingDependenciesError(List`1)
GooglePlayServices.<DoResolutionUnsafe>c__AnonStorey4:<>m__1(List`1)
GooglePlayServices.<GradleResolution>c__AnonStorey0:<>m__0(Result)
GooglePlayServices.<GradleResolution>c__AnonStorey1:<>m__0()
Google.RunOnMainThread:ExecuteNext()
Google.RunOnMainThread:ExecuteAll()
Google.RunOnMainThread:Run(Action, Boolean)
GooglePlayServices.<GradleResolution>c__AnonStorey0:<>m__1(Result)
GooglePlayServices.<GradleResolution>c__AnonStorey0:<>m__2(Result)
GooglePlayServices.ProgressReporter:SignalComplete()
GooglePlayServices.ProgressReporter:Update(CommandLineDialog)
GooglePlayServices.CommandLineDialog:Update()
UnityEditor.EditorApplication:Internal_CallUpdateFunctions()

错误解决失败的图像

Android解析器也有错误:

Android 解析器设置的图像

解析器错误的图像

设备监视器中的错误:

DllNotFoundException: FirebaseCppApp-5.2.0
at (wrapper managed-to-native) Firebase.AppUtilPINVOKE/SWIGExceptionHelper:SWIGRegisterExceptionCallbacks_AppUtil (Firebase.AppUtilPINVOKE/SWIGExceptionHelper/ExceptionDelegate,Firebase.AppUtilPINVOKE/SWIGExceptionHelper/ExceptionDelegate,Firebase.AppUtilPINVOKE/SWIGExceptionHelper/ExceptionDelegate,Firebase.AppUtilPINVOKE/SWIGExceptionHelper/ExceptionDelegate,Firebase.AppUtilPINVOKE/SWIGExceptionHelper/ExceptionDelegate,Firebase.AppUtilPINVOKE/SWIGExceptionHelper/ExceptionDelegate,Firebase.AppUtilPINVOKE/SWIGExceptionHelper/ExceptionDelegate,Firebase.AppUtilPINVOKE/SWIGExceptionHelper/ExceptionDelegate,Firebase.AppUtilPINVOKE/SWIGExceptionHelper/ExceptionDelegate,Firebase.AppUtilPINVOKE/SWIGExceptionHelper/ExceptionDelegate,Firebase.AppUtilPINVOKE/SWIGExceptionHelper/ExceptionDelegate)
at Firebase.AppUtilPINVOKE+SWIGExceptionHelper..cctor () [0x00000] in <filename unknown>:0 
Rethrow as TypeInitializationException: An exception was thrown by the type initialize

监视器错误的图像

下载

[解决了我的问题]

我的问题是 Android SDK 构建工具和工具版本的版本。

Android SDK 已更新,但在 build-tools 目录中,有一个名为“android-4.2.2”的旧目录,通过删除它解决了问题。

我还将 Android SDK 工具版本从 26.1.1 降级到 25.2.5

标签: androidfirebaseunity3dcompiler-errors

解决方案


尝试安装 Google Play Resolver ( https://github.com/googlesamples/unity-jar-resolver )。以下是步骤:

  1. 在存储库中下载统一包。不要下载发行版,它们已经过时了。我在这里下载了它https://github.com/googlesamples/unity-jar-resolver/blob/master/play-services-resolver-1.2.80.0.unitypackage
  2. 导入包后,转到 Assets > Play Services Resolver > Update
  3. 一切更新后打开Assets > Play Services Resolver > Android > Settings。我检查了这些设置 在此处输入图像描述
  4. Assets > Play Services Resolver > Android > Force Update

推荐阅读