2014-09-04 85 views
0

我想在我的android应用中使用Facebook sdk分享自定义文本状态。通过facebook sdk分享自定义文本状态

我用this facebook tutorial

FacebookDialog shareDialog = new FacebookDialog.ShareDialogBuilder(MainActivity.this) 
       .setLink("https://developers.facebook.com/android") 
       .build(); 
       uiHelper.trackPendingDialogCall(shareDialog.present()); 

,但我怎么能分享文字(不链接)?

回答

0

通过使用FacebookDialog(Facebook的API)则不能添加消息编程

1
private void publishFeedDialog() { 
Bundle params = new Bundle(); 
params.putString("name", "Facebook SDK for Android"); 
params.putString("caption", "Build great social apps and get more installs."); 
params.putString("description", "The Facebook SDK for Android makes it easier and faster to develop Facebook integrated Android apps."); 
params.putString("link", "https://developers.facebook.com/android"); 
params.putString("picture", "https://raw.github.com/fbsamples/ios-3.x-howtos/master/Images/iossdk_logo.png"); 

WebDialog feedDialog = (
    new WebDialog.FeedDialogBuilder(getActivity(), 
     Session.getActiveSession(), 
     params)) 
    .setOnCompleteListener(new OnCompleteListener() { 

     @Override 
     public void onComplete(Bundle values, 
      FacebookException error) { 
      if (error == null) { 
       // When the story is posted, echo the success 
       // and the post Id. 
       final String postId = values.getString("post_id"); 
       if (postId != null) { 
        Toast.makeText(getActivity(), 
         "Posted story, id: "+postId, 
         Toast.LENGTH_SHORT).show(); 
       } else { 
        // User clicked the Cancel button 
        Toast.makeText(getActivity().getApplicationContext(), 
         "Publish cancelled", 
         Toast.LENGTH_SHORT).show(); 
       } 
      } else if (error instanceof FacebookOperationCanceledException) { 
       // User clicked the "x" button 
       Toast.makeText(getActivity().getApplicationContext(), 
        "Publish cancelled", 
        Toast.LENGTH_SHORT).show(); 
      } else { 
       // Generic, ex: network error 
       Toast.makeText(getActivity().getApplicationContext(), 
        "Error posting story", 
        Toast.LENGTH_SHORT).show(); 
      } 
     } 

    }) 
    .build(); 
feedDialog.show(); 

}

+0

谢谢,我试试这个,我得到吨的错误,我是新来的Android程序,u能PLZ发布完整的代码示例? @ naveen-tamrakar – 2014-09-04 13:42:37

+0

这就像一个魅力! :) – 2014-12-09 23:41:57

0

试试这个办法,希望这将帮助你解决你的问题。

private FacebookDialog.ShareDialogBuilder createShareDialogBuilderForLink() { 
      return new FacebookDialog.ShareDialogBuilder(mActivity) 
      .setName(mTitle) 
      .setDescription(mDescription) 
      .setLink(mUrlShare); 
     } 
+0

但这种方式也是分享链接,,我想分享只是文本︰\ – 2014-09-04 14:22:53

+0

不要添加此“.setLink(mUrlShare)”... ... – Javier 2014-09-04 14:23:40

+0

和我在哪里可以添加文本? – 2014-09-04 14:34:01