2012-02-27 68 views
1

我正在使用以下代碼預先填充發布對話框。但我發現了一個空的對話框,不過:無法提供參數到Facebook發佈對話框

 Bundle parameters = new Bundle(); 
     parameters.putString("app_id", appID); 
     parameters.putString("name", "Facebook Dialog"); 
     parameters.putString("caption", "Reference Documentation"); 

     parameters.putString("message", "Facebook Dialogs are easy!"); 

     facebook.dialog(score.this, "feed", parameters, new DialogListener() { 

      @Override 
      public void onComplete(Bundle values) { 
      } 

      @Override 
      public void onFacebookError(FacebookError error) { 
      } 

      @Override 
      public void onError(DialogError e) { 
      } 

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

然而,如果可能的話,我想沒有任何對話可言,直接發佈到用戶牆上。

回答

5

我不會爲Android開發,但我知道Facebook在Feed對話框中處理message參數時發生了變化,可能會導致您的問題。

預先填充message參數始終違反政策。它必須是用戶生成的。在過去的幾個月中,Facebook停止了一些事情,甚至在Feed對話框中接受它,這可能會導致你的問題。現在,您可以將其作爲參數傳遞的唯一方式是通過圖表API發佈到Feed。當然,您仍然需要確保遵守應用設計中的策略,並讓用戶填充消息 - 它不能是應用生成的字符串。

因此,由於您甚至不需要對話框,所以您應該通過圖形API真正查看發佈內容。您需要獲取publish_stream擴展權限,然後對用戶的提要執行POST。見https://developers.facebook.com/docs/reference/api/post/