3

我正在尝试将 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>所以我真的不知道如何继续。

知道会发生什么吗?

4

2 回答 2

4

SDK 在我的项目中,它是唯一的一个。在为此苦苦挣扎了几个小时后,唯一解决问题的方法是从我的项目中删除 sdk 的所有痕迹并再次导入。

然后它起作用了。

于 2013-12-20T14:30:29.940 回答
3

我也有这个错误。不仅使用 Facebook,还使用其他插件(谷歌等)。

在此处输入图像描述

更新您proguard-user.txt以包含 Facebook 课程-keep class com.facebook.** { *; }

  1. Player Settings
  2. 查看Custom Proguard File
  3. 打开/Plugins/Android/proguard-user.txt
  4. 添加-keep class com.facebook.** { *; }

当您进行新构建时,这不会删除 Facebook 类。

于 2020-09-13T10:47:00.160 回答