简体   繁体   English

android Facebook SDK崩溃的应用程序?

[英]android Facebook SDK Crashing the application?

I am trying to add facebook login in my application , i followed every thing at this example 我试图在我的应用程序中添加facebook登录名,在此示例中,我遵循了所有操作

https://developers.facebook.com/docs/android/login-with-facebook/ https://developers.facebook.com/docs/android/login-with-facebook/

also I've Downloaded the sdk and all examples are working fine , 我也已经下载了sdk,所有示例运行正常,

But my problem is when i attempt to copy every thing from the example project to my project , my application crashed if i added FaceBook session 但是我的问题是,当我尝试将示例项目中的所有内容复制到我的项目中时,如果我添加FaceBook会话,我的应用程序就会崩溃

 Session session = Session.getActiveSession();

 if (session == null) {
     if (savedInstanceState != null) {
         session = Session.restoreSession(this, null, statusCallback, savedInstanceState);
     }
     if (session == null) {
         session = new Session(this);
     }
     Session.setActiveSession(session);
     if (session.getState().equals(SessionState.CREATED_TOKEN_LOADED)) {
         session.openForRead(new Session.OpenRequest(this).setCallback(statusCallback));
     }
 }

this is the log : 这是日志:

03-28 12:42:32.209: E/AndroidRuntime(8613): FATAL EXCEPTION: main
03-28 12:42:32.209: E/AndroidRuntime(8613): java.lang.NoClassDefFoundError: android.support.v4.content.LocalBroadcastManager
03-28 12:42:32.209: E/AndroidRuntime(8613):     at com.facebook.Session.postActiveSessionAction(Session.java:1328)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at com.facebook.Session.setActiveSession(Session.java:790)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at com.dow.dowjstest.MainActivity.onCreate(MainActivity.java:72)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at android.app.Activity.performCreate(Activity.java:5372)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1104)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2257)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2349)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at android.app.ActivityThread.access$700(ActivityThread.java:159)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1316)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at android.os.Handler.dispatchMessage(Handler.java:99)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at android.os.Looper.loop(Looper.java:176)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at android.app.ActivityThread.main(ActivityThread.java:5419)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at java.lang.reflect.Method.invokeNative(Native Method)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at java.lang.reflect.Method.invoke(Method.java:525)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1046)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:862)
03-28 12:42:32.209: E/AndroidRuntime(8613):     at dalvik.system.NativeStart.main(Native Method)
03-28 12:42:32.264: I/GATE(8613): <GATE-M>DEV_ACTION_COMPLETED</GATE-M>

The library 'android-support-v4.jar' should be same in both Facebook lib project and your project. Facebook lib库项目和您的项目中的库“ android-support-v4.jar”应该相同。 because it seems like the different projects are using 2 separate support libraries and there checksum is different. 因为似乎不同的项目正在使用2个独立的支持库,并且校验和不同。

For more details check Facebook SDK for Android duplicate support library on dependencies 有关更多详细信息,请检查依赖项的Facebook SDK for Android重复支持库

Hope this helps.. 希望这可以帮助..

经过数小时的搜索此问题后,问题是我不得不从Facebook库中复制android-support-v4.jar并在我的项目android-support-v4.jar其替换为android-support-v4.jar ,这对我android-support-v4.jar ,但我不知道为什么

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

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