android - 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()
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解析器也有错误:
设备监视器中的错误:
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
解决方案
尝试安装 Google Play Resolver ( https://github.com/googlesamples/unity-jar-resolver )。以下是步骤:
- 在存储库中下载统一包。不要下载发行版,它们已经过时了。我在这里下载了它https://github.com/googlesamples/unity-jar-resolver/blob/master/play-services-resolver-1.2.80.0.unitypackage
- 导入包后,转到 Assets > Play Services Resolver > Update
- 一切更新后打开
Assets > Play Services Resolver > Android > Settings
。我检查了这些设置 - 跑
Assets > Play Services Resolver > Android > Force Update
推荐阅读
- android - 删除 Gson 中的空数组
- javascript - input.value 在交换后被销毁
- 地方的物品
- java - OnActivityResult 与嵌入式扫描仪
- go - 如何拥有浅色背景的 Go 覆盖 HTML?
- javascript - ES6 `let` 和 `const` 是否仅在使用 babel 编译时在编译时工作?
- java - 从单个键中检索多个键/值对
- .net - WCF 是否容易受到 XXE 攻击
- multithreading - 使用依赖注入的多线程连接对象
- wordpress - 选择具有特定父页面的子页面不起作用
- javascript - 如何在 Node.js 中使用 HTTP/1.0 协议创建简单的 Web 服务器