2011-10-26 5 views
0

android에서 페이스 북 게시를 구현하는 데 약간의 문제가 있습니다. 단추를 클릭하면 자동으로 사용자 벽에 게시되는 방식으로 구현하려고합니다. 첫째, 사용자 로그인 정보를 저장할 위치를 모르거나 페이스 북 API가 이미이를 처리합니까? 가장 중요한 것은, 일부 샘플 코드를 시험해 보았고 facebookClient를 인증하는 데 문제가 있습니다.facebook post hrough android를 허용하는 facebook 인증을 구현하는 방법은 무엇입니까?

facebookClient.authorize(this, new String[] {"publish_stream"}, new Facebook.DialogListener() 

private Button.OnClickListener myButtonOnClickListener = new Button.OnClickListener(){ 

    @Override 
    // on click load the asynctask to run. 

    public void onClick(View arg0) { 
     facebookClient = new Facebook(APP_ID); 
     facebookAsync = new AsyncFacebookRunner(facebookClient); 

     if (facebookClient.isSessionValid()) { 
      uploadVideoFile(); 
     } 
     else { 
      facebookClient.authorize(this, new String[] {"publish_stream"}, new Facebook.DialogListener() { 

       @Override 
       public void onFacebookError(FacebookError e) { 
        (RESULT_CANCELED); 
       } 

       @Override 
       public void onError(DialogError e) { 
       (RESULT_CANCELED); 
       } 

       @Override 
       public void onComplete(Bundle values) { 
        uploadVideoFile(); 
       } 

       @Override 
       public void onCancel() { 
       (RESULT_CANCELED); 
       } 
      }); 
     } 

    }; 

은 내가이에 붙어과 혼란 스러워요 The method authorize(Activity, String[], Facebook.DialogListener) in the type Facebook is not applicable for the arguments (new View.OnClickListener(){}, String[], new Facebook.DialogListener(){}).

, 어떤 도움이 충분하시기 바랍니다 하더군요.

답변

0

이는 사용자의 this이 authorize() 메소드로 전달 되었기 때문에 해당 활동의 인스턴스입니다. 귀하의 onClickListener의 이름으로 바꾸십시오. myButtonOnClickListener

+2

다른 방법이 있습니다. 거기에 ActivityName을 입력해야합니다. – AmITheRWord

관련 문제