2012-12-14 3 views
0

버튼을 클릭하면 앱이 중지되었습니다.Android facebook 피드 대화 상자가 표시되지 않습니다

public class MainActivity extends ListActivity { 
     private Facebook mFacebook; 

Button dialogButton = (Button) dialog.findViewById(R.id.dialogButtonOK); 
     dialogButton.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       postToWall(); 
      } 
     }); 
     dialog.show();  
    } 
public void postToWall() { 
Bundle parameters = new Bundle(); 
     parameters.putString("description", "description about link"); 
     parameters.putString("picture","link of picture your want add with share post."); 
     parameters.putString("link", "Link you want to share"); 
     parameters.putString("name","Name of link"); 
     parameters.putString("caption","describe your caption text"); 

      mFacebook.dialog(this, "stream.publish", parameters,new DialogListener() { 

       @Override 
       public void onFacebookError(FacebookError arg0) { 
       } 

       public void onError(DialogError arg0) { 
       } 

       public void onComplete(Bundle arg0) { 
       } 

       public void onCancel() { 
       } 
      }); 
     } 

스택 트레이스 :

12-14 21:26:11.198: E/AndroidRuntime(1021): FATAL EXCEPTION: main 
12-14 21:26:11.198: E/AndroidRuntime(1021): java.lang.NullPointerException 
12-14 21:26:11.198: E/AndroidRuntime(1021):  at com.example.imdb.Display.postToWall(Display.java:447) 
12-14 21:26:11.198: E/AndroidRuntime(1021):  at com.example.imdb.Display$1.onClick(Display.java:399) 
12-14 21:26:11.198: E/AndroidRuntime(1021):  at android.view.View.performClick(View.java:4202) 
12-14 21:26:11.198: E/AndroidRuntime(1021):  at android.view.View$PerformClick.run(View.java:17340) 
12-14 21:26:11.198: E/AndroidRuntime(1021):  at android.os.Handler.handleCallback(Handler.java:725) 
12-14 21:26:11.198: E/AndroidRuntime(1021):  at android.os.Handler.dispatchMessage(Handler.java:92) 
12-14 21:26:11.198: E/AndroidRuntime(1021):  at android.os.Looper.loop(Looper.java:137) 
12-14 21:26:11.198: E/AndroidRuntime(1021):  at android.app.ActivityThread.main(ActivityThread.java:5039) 
12-14 21:26:11.198: E/AndroidRuntime(1021):  at java.lang.reflect.Method.invokeNative(Native Method) 
12-14 21:26:11.198: E/AndroidRuntime(1021):  at java.lang.reflect.Method.invoke(Method.java:511) 
12-14 21:26:11.198: E/AndroidRuntime(1021):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 
12-14 21:26:11.198: E/AndroidRuntime(1021):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) 
12-14 21:26:11.198: E/AndroidRuntime(1021):  at dalvik.system.NativeStart.main(Native Method) 

또한, 경고가 방법 대화 상자 (문맥은, 문자열, 번들, Facebook.DialogListener) 유형 페이스 북에서이되지 않는 것을 말한다이다. 이게 중요합니까? 이 문제를 해결하는 방법?

+0

mFacebook은 어디에서 인스턴스화됩니까? 또한 디스플레이 코드의 447 행은 무엇입니까? –

+0

필자는 그것을 인스턴스화하지 않았다. ... line 447 : mFacebook.dialog (this, "stream.publish", parameters, new DialogListener() { – user23256

답변

1

mFacebook은 아마도 null 일 수 있습니다. 확인 해봐.

+0

방금 ​​mFacebook을 시작했는데 어떻게 인스턴스화해야합니까? – user23256

+0

'mFacebook = Facebook yourAppId); 자세한 내용은 http://developers.facebook.com/android/를 확인하십시오. –

1

mFacebook 개체가 null 인 경우 mFacebook = new Facebook ("yourappIDString")을 수행해야합니다. 당신은 또한 생성자 에 APPID을 통과해야합니다, 당신의 중단의 질문에 대답, 페이스 북 source는 주장이

새로운 코드 대신, Request는 API 요청을 할 Session 세션 상태를 관리하는 데 사용한다

,

계속 준수하려면 일부 코드를 다시 작성해야합니다.

관련 문제