如何在FaceBook墙上发布消息?

时间:2011-11-17 11:17:54

标签: android facebook facebook-wall

我想在Facebook墙上发布消息,我在我的项目中集成了facebook sdk,我的编码是这样的,但Facebook墙上没有消息显示,但信息来自我的应用程序... 这是我用来发帖的,

public void updateStatus(String accessToken, String message){  

       System.out.println("mes is "+message);           
       Bundle bundle = new Bundle();     
       bundle.putString("message", message);                    
       facebook.dialog(this, "stream.publish", bundle, this);

}

3 个答案:

答案 0 :(得分:0)

   public void showPostDailog ( String message ) {
        ProgressDialog authDialog = ProgressDialog.show ( SubmitComplaintActivity.this , "Please wait" ,
              "Posting Message"   , true , // indeterminate
                false ) ;

        Bundle parameters = new Bundle ( ) ;

        parameters.putString ( "link" , reult_complaint_url ) ;
        try {
            String response = mFacebook.request ( "me/feed" , parameters , "POST" ) ;
            System.out.println ( response ) ;
            isCompleteFacbook = true ;
        } catch ( IOException e ) {
            e.printStackTrace ( ) ;
        }
        if ( authDialog != null && authDialog.isShowing ( ) ) {
            authDialog.dismiss ( ) ;
            authDialog.hide ( ) ;
        }
    }

答案 1 :(得分:0)

如果您使用的是Android Facebook SDK,则代码位于FacebookConnector.java类中。 postmessageinThread()函数。

if ((fbconnector.getFacebook().isSessionValid())    {
    loginid=FacebookConnector.response;
    System.out.println("FB login ID is"+loginid);
    postMessageInThread(); //Replace this with another activity
    //String url="https://graph.facebook.com/me/friends?access_token=TOKEN";
} else  {
SessionEvents.AuthListener listener = new SessionEvents.AuthListener() {
    public void onAuthSucceed() 
    {
       System.out.println("onAuthSucceed");
       postMessageInThread();
    }
    public void onAuthFail(String error) 
    {
    }
};
SessionEvents.addAuthListener(listener);            System.out.println("Login to Facebook");
        fbconnector.login();

    }
}
private String getFacebookMsg() {
    System.out.println("Login value from getFacenookMSg"+loginid);      
    return "test";
}

答案 2 :(得分:0)

我遇到了同样的问题。我在搜索中发现了facebook.dialog()方法的消息字段的Facebook documentation中提到的内容:

消息:“此字段将在2011年7月12日被忽略预填充用户将键入的文本字段的消息。要符合Facebook平台策略,您的应用程序可能只在用户手动生成时设置此字段工作流程中较早的内容。大多数应用程序都不应该设置它。“

您需要使用以下内容:

Facebook.request("me/feed", bundle, "POST");