我有一个奇怪的问题。我有以下代码:
if (fbIntent.hasExtra("Link")) {
try{
postData[0]= fbIntent.getStringExtra("Link");
} catch (Exception e) {Log.d("fbIntent error",e.getMessage() );}
}
fbIntent.hasExtra(“Link”)是真的。所以编译器会进入if语句。但是我无法使用fbIntent.getStringExtra(“Link”)获取字符串。我从eclipse的调试中知道了。当我运行它时,我得到:
01-21 14:12:01.030: ERROR/AndroidRuntime(311): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.examples.Kikin/com.examples.Kikin.FacebookLogin}: java.lang.NullPointerException: println needs a message
请帮帮我。
答案 0 :(得分:0)
您需要初始化postData。尝试类似String[] postData = new String[1]
的内容。显然,如果你想使用postData [1],[2]和[3],你需要说new String[4]
。
答案 1 :(得分:0)
1)您当前的问题在
Log.d("fbIntent error", e.getMessage());
e.getMessage()
可能会返回null
,因此您获得了java.lang.NullPointerException: println needs a message
。请改用e.toString()
。或者最好的方法是:
Log.e("some tag", "some comment", e);
2)当您解决此问题时,您将能够看到实际错误,以进一步修复根/真实问题。因此,请随时使用新的日志数据更新您的帖子。