繁体   English   中英

在Android上初始化Facebook SDK时找不到类com.facebook.FacebookActivity

[英]Class com.facebook.FacebookActivity Not Found on Initialising Facebook SDK on Android

我们正在尝试将Facebook SDK集成到我们的项目中。 我们没有使用(也不会)Android Studio。 Facebook SDK作为.AAR文件(专用于Android Studio)提供。 为了能够使用它,因为它是一个简单的.ZIP文件,我们提取了所需的文件(classes.jar,resources)。

以下文件:

  • 我们修改了AndroidManifest.xml以添加元数据,facebook活动。

  • 我们修改了strings.xml以添加字符串.........

  • 在我们的project.properties中,我们将目标修改为android-21,以便可以编译资源

  • 我们没有使用proguard

然后:

  • 编译完成后没有错误

  • 当调用FacebookSdk.sdkInitialise(....)时,我们有一个锁定,我们在日志中收到以下错误:

     10-03 15:20:42.071: I/art(8735): Rejecting re-init on previously-failed class java.lang.Class<com.facebook.FacebookActivity> 10-03 15:20:42.071: I/art(8735): Rejecting re-init on previously-failed class java.lang.Class<com.facebook.FacebookActivity> 09-30 11:18:02.832: I/ActivityManager(776): Start proc 8618:com.mycompname.mygame/u0a699 for activity com.mycompname.mygame/.MyGameActivity 09-30 11:18:02.953: E/AndroidRuntime(8618): FATAL EXCEPTION: main 09-30 11:18:02.953: E/AndroidRuntime(8618): Process: com.mycompname.mygame, PID: 8618 09-30 11:18:02.953: E/AndroidRuntime(8618): java.lang.NoClassDefFoundError: Failed resolution of: Lcom/facebook/FacebookActivity; 09-30 11:18:02.953: E/AndroidRuntime(8618): at com.facebook.internal.Validate.hasFacebookActivity(Validate.java:192) 09-30 11:18:02.953: E/AndroidRuntime(8618): at com.facebook.FacebookSdk.sdkInitialize(FacebookSdk.java:198) 09-30 11:18:02.953: E/AndroidRuntime(8618): at com.facebook.FacebookSdk.sdkInitialize(FacebookSdk.java:174) 09-30 11:18:02.953: E/AndroidRuntime(8618): at com.mycompname.mygame.MyGameActivityExtension.onMyGameActivityCreate(MyGameActivityExtension.java:36) 09-30 11:18:02.953: E/AndroidRuntime(8618): at com.mycompname.mygame.MyGameActivity.onCreate(MyGameActivity.java:641) 09-30 11:18:02.953: E/AndroidRuntime(8618): at android.app.Activity.performCreate(Activity.java:5990) 09-30 11:18:02.953: E/AndroidRuntime(8618): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) 09-30 11:18:02.953: E/AndroidRuntime(8618): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278) 09-30 11:18:02.953: E/AndroidRuntime(8618): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 09-30 11:18:02.953: E/AndroidRuntime(8618): at android.app.ActivityThread.access$800(ActivityThread.java:151) 09-30 11:18:02.953: E/AndroidRuntime(8618): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 09-30 11:18:02.953: E/AndroidRuntime(8618): at android.os.Handler.dispatchMessage(Handler.java:102) 09-30 11:18:02.953: E/AndroidRuntime(8618): at android.os.Looper.loop(Looper.java:135) 09-30 11:18:02.953: E/AndroidRuntime(8618): at android.app.ActivityThread.main(ActivityThread.java:5254) 09-30 11:18:02.953: E/AndroidRuntime(8618): at java.lang.reflect.Method.invoke(Native Method) 09-30 11:18:02.953: E/AndroidRuntime(8618): at java.lang.reflect.Method.invoke(Method.java:372) 09-30 11:18:02.953: E/AndroidRuntime(8618): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 09-30 11:18:02.953: E/AndroidRuntime(8618): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 09-30 11:18:02.953: E/AndroidRuntime(8618): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.facebook.FacebookActivity" on path: DexPathList[[zip file "/data/app/com.mycompname.mygame-1/base.apk"],nativeLibraryDirectories=[/data/app/com.mycompname.mygame-1/lib/arm, /vendor/lib, /system/lib]] 09-30 11:18:02.953: E/AndroidRuntime(8618): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) 09-30 11:18:02.953: E/AndroidRuntime(8618): at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 09-30 11:18:02.953: E/AndroidRuntime(8618): at java.lang.ClassLoader.loadClass(ClassLoader.java:469) 09-30 11:18:02.953: E/AndroidRuntime(8618): ... 18 more 09-30 11:18:02.953: E/AndroidRuntime(8618): Suppressed: java.lang.NoClassDefFoundError: com.facebook.FacebookActivity 09-30 11:18:02.953: E/AndroidRuntime(8618): at dalvik.system.DexFile.defineClassNative(Native Method) 09-30 11:18:02.953: E/AndroidRuntime(8618): at dalvik.system.DexFile.defineClass(DexFile.java:226) 09-30 11:18:02.953: E/AndroidRuntime(8618): at dalvik.system.DexFile.loadClassBinaryName(DexFile.java:219) 09-30 11:18:02.953: E/AndroidRuntime(8618): at dalvik.system.DexPathList.findClass(DexPathList.java:321) 09-30 11:18:02.953: E/AndroidRuntime(8618): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:54) 09-30 11:18:02.953: E/AndroidRuntime(8618): ... 20 more 09-30 11:18:02.953: E/AndroidRuntime(8618): Suppressed: java.lang.ClassNotFoundException: com.facebook.FacebookActivity 09-30 11:18:02.953: E/AndroidRuntime(8618): at java.lang.Class.classForName(Native Method) 09-30 11:18:02.953: E/AndroidRuntime(8618): at java.lang.BootClassLoader.findClass(ClassLoader.java:781) 09-30 11:18:02.953: E/AndroidRuntime(8618): at java.lang.BootClassLoader.loadClass(ClassLoader.java:841) 09-30 11:18:02.953: E/AndroidRuntime(8618): at java.lang.ClassLoader.loadClass(ClassLoader.java:504) 09-30 11:18:02.953: E/AndroidRuntime(8618): ... 19 more 09-30 11:18:02.953: E/AndroidRuntime(8618): Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available 

有没有人知道发生了什么?

只要我知道com.facebook.FacebookActivity现在不是facebook sdk的一部分。

接缝他们开始合并清单文件(或者不再需要任何活动)

您可以降级库版本或从清单文件中删除com.facebook.FacebookActivity 但请确保在这种情况下正确的清单合并

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM