2011-01-21 16 views
0

私は問題があります。私は次のコードを持っています:android intent extra data retrieval problem

if (fbIntent.hasExtra("Link")) { 
      try{ 
      postData[0]= fbIntent.getStringExtra("Link"); 
      } catch (Exception e) {Log.d("fbIntent error",e.getMessage());} 
     } 

fbIntent.hasExtra( "リンク")が真です。コンパイラは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

あなたはpostDataを初期化しましたか? – EboMike

+0

ええ。やった。私はそれをヌルとしてしましたが。それは問題ですか? – Brahadeesh

+0

コードの詳細が必要です。また、スタックトレースは、NPEがどのラインで発生しているかを正確に伝える必要があります。 – EboMike

答えて

0

postDataを初期化する必要があります。 String[] postData = new String[1]のようなものを試してみてください。明らかに、postData [1]、[2]、[3]を使用する場合は、new String[4]と言う必要があります。

0

1)あなたの現在の問題は、あなたがjava.lang.NullPointerException: println needs a messageを取得するので、nullを返すことがあり

Log.d("fbIntent error", e.getMessage()); 

e.getMessage()です。代わりにe.toString()を使用してください。または最良の方法は、次のようになります。

Log.e("some tag", "some comment", e); 

2)あなたはこの問題を解決するとき、あなたはあなたのルート/本当の問題を修正するには、さらに行くように実際のエラーを表示することができます。新しいログデータで投稿を更新してください。

+0

それは私の問題ではありませんでした。しかし、情報をありがとう。私はすべて私のgetMessage()をtoString()に変更しました。 – Brahadeesh