Facebook SDK没有';在Android上,API 10级之后不能工作

Facebook SDK没有';在Android上,API 10级之后不能工作,android,facebook,sdk,twitter4j,linkedin-j,Android,Facebook,Sdk,Twitter4j,Linkedin J,我使用Facebook SDK(以及Twitter、Linkedin)登录我的应用程序。 如果我指定minSdkVersion“@Rawkode Line 161是facebook sdk.Log.d(“facebook”,e.getMessage())的一个lof;似乎facebook没有发送任何东西,我从这一行得到了一个错误。” 您的问题是e.getMessage()是一个空字符串,当您尝试使用空字符串调用Log.d(标记、消息)时,它将使用NPE崩溃。我也遇到过类似的问题,我花了一段时间才

我使用Facebook SDK(以及Twitter、Linkedin)登录我的应用程序。
如果我指定minSdkVersion“@Rawkode Line 161是facebook sdk.Log.d(“facebook”,e.getMessage())的一个lof;似乎facebook没有发送任何东西,我从这一行得到了一个错误。”

您的问题是e.getMessage()是一个空字符串,当您尝试使用空字符串调用Log.d(标记、消息)时,它将使用NPE崩溃。我也遇到过类似的问题,我花了一段时间才找到:

有些错误没有getMessage()方法的任何数据,因为它不是必需的。我的解决方案是创建我自己的方法,该方法中始终包含一些文本,您将再也无法从中获得另一个NPE:

private void logIt(String message){
    Log.d(TAG, "Logged: " + message);
}

只需调用它而不是普通的Log.d(),您就不会遇到这个问题,因为总会有数据要记录(在您的情况下,它会说:“Logged:null”)。您也可以修改该方法以接受单个标记,但这不是必需的。

我也有同样的错误。。该应用程序在版本9或更低版本上运行良好,但在android 3.0或更高版本上无法运行

尝试使用新的facebook api,它可以工作


对不起我的英语

如果您只是升级应用程序以使用片段,为什么不使用Android支持库类?这行是什么?Login.java:161。我在SDK>10上使用Facebook SDK,没有出现问题。@Estel我使用的是Android.support.v13。所以我需要将API级别11设置为最小值。我就是不明白这个错误。如果我完全删除字段..它会工作。错误来自何处?@Rawkode是否在清单中指定了android:minsdk版本?@Rawkode第161行是facebook sdk的lof。Log.d(“Facebook”,e.getMessage());看起来,Facebook没有发送任何东西,我从这一行中得到了一个错误。这里的重点不是由于空日志导致的应用程序崩溃,但事实是Facebook没有发送任何东西给我。经过研究,这是因为API级别9不支持sdk中调用的http函数。我需要在facebook sdk中更改这些函数。我将发布另一个关于它的问题。谢谢你的回复。
    07-12 16:58:44.148: E/AndroidRuntime(18310): FATAL EXCEPTION: main
07-12 16:58:44.148: E/AndroidRuntime(18310): java.lang.NullPointerException: println needs a message
07-12 16:58:44.148: E/AndroidRuntime(18310):    at android.util.Log.println_native(Native Method)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at android.util.Log.d(Log.java:138)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at com.branchu1.Login$1$1.onComplete(Login.java:161)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at com.facebook.android.Facebook$1.onComplete(Facebook.java:312)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at com.facebook.android.FbDialog$FbWebViewClient.shouldOverrideUrlLoading(FbDialog.java:144)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at android.webkit.CallbackProxy.uiOverrideUrlLoading(CallbackProxy.java:224)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at android.webkit.CallbackProxy.handleMessage(CallbackProxy.java:324)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at android.os.Handler.dispatchMessage(Handler.java:99)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at android.os.Looper.loop(Looper.java:137)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at android.app.ActivityThread.main(ActivityThread.java:4424)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at java.lang.reflect.Method.invokeNative(Native Method)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at java.lang.reflect.Method.invoke(Method.java:511)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
07-12 16:58:44.148: E/AndroidRuntime(18310):    at dalvik.system.NativeStart.main(Native Method)
private void logIt(String message){
    Log.d(TAG, "Logged: " + message);
}