将照片发布到Facebook参数

时间:2012-12-25 20:50:06

标签: android facebook facebook-graph-api

我正在使用新的FB Android SDK 3.0向FB发布照片。我现在正在寻找一种方法来设置更多的参数,而不仅仅是图像本身和简单的文本。我尝试了很多不同的参数,但它们似乎没有做任何事情。

我想要做的是添加一个链接,一个图标,如果可能的话,还可以在Like和Comment链接旁边添加一个自定义链接项。

以下是来自twitter的图标和自定义链接项的示例:

enter image description here

这是我目前正在使用的代码:

    byte[] data = get binary image data;

    Bundle postParams = new Bundle();
    postParams.putString("name", "Image text");
    postParams.putByteArray("picture", data);

    // All these parameters do nothing...
    postParams.putString("icon", "http://www.myimage.com/image.png");
    postParams.putString("message", "XXX");
    postParams.putString("caption", "Build great social apps and get more installs.");
    postParams.putString("description", "The Facebook SDK for Android makes it easier and faster to develop Facebook integrated Android apps.");
    postParams.putString("link", "https://developers.facebook.com/android");

    Request request = new Request(Session.getActiveSession(), "me/photos", postParams, HttpMethod.POST);
    Response r = request.executeAndWait();

帖子如下:

enter image description here

1 个答案:

答案 0 :(得分:2)

1。添加图标

您可以通过app's dashboardhttps://developers.facebook.com/apps/APP_ID/appdetails

管理图标

2。添加操作链接

“自定义链接”实际上是一种“行动”。

您在Twitter帖子中看到的“操作”已使用Post表中的actions数组完成:

  

帖子上的可用操作列表(包括评论,喜欢,   以及可选的app指定操作)

因此,如果您真的想在赞·评论附近添加此操作,则唯一的选择是在Feed而不是Photo中创建Post }。

以下是先验工作代码:

postParams.putString("message", "XXX");
postParams.putString("caption", "developers.facebook.com");
postParams.putString("description", "A tool to help you learn and browse the Facebook Graph API.");
postParams.putString("actions", "[{
       'name':'Test a simple Graph API call!',
       'link':'https://developers.facebook.com/tools/explorer?method=GET&path=me'
       /* ^ This link must direct to the application's connect or canvas URL. 
          You'll get an error otherwise. */
    }]"
);
postParams.putString("type", "photo");
postParams.putString("link", "https://developers.facebook.com/tools/explorer/");
postParams.putString("picture", "http://blog.programmableweb.com/wp-content/ishot-44.png");

Request request = new Request(Session.getActiveSession(), "me/feed", postParams, HttpMethod.POST);

3。在Graph API Explorer中测试

Test in the Graph API Explorer

4。时间线预览

Timeline preview