0

我有一个奇怪的问题。我有以下代码:

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

请帮我。

4

2 回答 2

0

您需要初始化 postData。尝试类似的东西String[] postData = new String[1]。显然,如果你想使用 postData[1]、[2] 和 [3],你需要说new String[4].

于 2011-01-21T20:16:52.283 回答
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)当你解决这个问题时,你将能够看到实际错误,以进一步解决你的根/实际问题。因此,请随时使用新的日志数据更新您的帖子。

于 2011-01-21T21:02:25.387 回答