我正在尝试将适用于 Unity 的官方 Android SDK 合并到我的项目中。在我在 Unity 中的 facebook 选项上设置所有内容并进行构建后,每次调用 FB.Init() 时我都会得到这个:
AndroidJavaException: java.lang.ClassNotFoundException: com.facebook.unity.FB
at UnityEngine.AndroidJNISafe.CheckException () [0x00000] in <filename unknown>:0
at UnityEngine.AndroidJNISafe.CallStaticObjectMethod (IntPtr clazz, IntPtr methodID, UnityEngine.jvalue[] args) [0x00000] in <filename unknown>:0
at UnityEngine.AndroidJavaObject._CallStatic[AndroidJavaObject] (System.String methodName, System.Object[] args) [0x00000] in <filename unknown>:0
at UnityEngine.AndroidJavaObject.CallStatic[AndroidJavaObject] (System.String methodName, System.Object[] args) [0x00000] in <filename unknown>:0
at UnityEngine.AndroidJavaObject.FindClass (System.String name) [0x00000] in <filename unknown>:0
at UnityEngine.AndroidJavaClass._AndroidJavaClass (System.String className) [0x00000] in <filename unknown>:0
at UnityEngine.AndroidJavaClass..ctor (System.String className) [0x00000] in <filename unknown>:0
at Facebook.AndroidFacebook.get_FB () [0x0000b] in C:\Users\motionart\Documents\Unity Projects\
我什至启用了“开发构建”和“脚本调试”,但一切都发生在 <filename unknown>
上所以我真的不知道如何继续。
知道会发生什么吗?
最佳答案
我也有这个错误。不仅是 Facebook,还有其他插件(google 等)。
更新您的 proguard-user.txt
以包含 Facebook 类 -keep class com.facebook.** { *; }
- 转到
播放器设置
- 检查
自定义 Proguard 文件
- 打开
/Plugins/Android/proguard-user.txt
- 添加
-keep class com.facebook.** { *; }
这不会在您进行新构建时删除 Facebook 类。
关于java.lang.ClassNotFoundException : com. facebook.unity.FB 每当我测试我的构建时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20692174/