j2me facebook图形api-在用户墙上发布图像

j2me facebook图形api-在用户墙上发布图像,facebook,api,facebook-graph-api,java-me,lwuit,Facebook,Api,Facebook Graph Api,Java Me,Lwuit,我正在尝试将设备上的图像张贴到用户的墙上。我发现:,但它不支持post image,所以我写了一个简单的方法,如下所示: public void postOnWallWithPhoto(String userId, String message, byte[] img) throws IOException { checkAuthentication(); FacebookRESTService con = new FacebookRESTService(token, user

我正在尝试将设备上的图像张贴到用户的墙上。我发现:,但它不支持post image,所以我写了一个简单的方法,如下所示:

 public void postOnWallWithPhoto(String userId, String message, byte[] img) throws IOException {
    checkAuthentication();
    FacebookRESTService con = new FacebookRESTService(token, userId, FEED, true);
    con.setContentType("image/jpeg");
    con.addArgument("message", message);
    con.addArgument("type", "photo");
    con.addArgument("picture", img);
    if (slider != null) {
        SliderBridge.bindProgress(con, slider);
    }
    for (int i = 0; i < responseCodeListeners.size(); i++) {
        con.addResponseCodeListener((ActionListener) elementAt(i));
    }
    current = con;
    NetworkManager.getInstance().addToQueueAndWait(con);
}
发送请求后,墙上只显示文本(在本例中为test2)。在应该是图像的地方,有一条消息:“无效”


有人知道我做错了什么吗?或者有人可以与我共享一个代码,帮助我在facebook墙上发布图片吗?

由于facebook对其登录过程进行了更改,旧的LWUIT facebook登录不再正常工作


这只适用于在其当前facebook演示中也支持图像发布的应用程序。

众所周知,J2me没有为facebook支持提供任何in-api,但我们仍然可以在facebook墙上发布图像,我已经做到了。 下面我将分享一个breif过程,介绍如何使用j2me将图像发布到facebook墙上

  • 从facebook获取访问令牌:您可以使用PHP或任何第三方api来完成(在我的例子中,我使用了app42(shephertz)云服务)

  • 拥有访问令牌后,使用该访问令牌获取要发布图像的facebook用户ID

  • 一旦你有了用户ID,唯一剩下的就是使用“多部分请求”将图像上传到facebook。下面是我的代码中的一些重要语句(我没有分享我的全部代码,因为我使用了第三方api(app42)来获取访问令牌和用户id)

  • facebook的Url:

    String url = "https://graph.facebook.com/" + user_id + "/photos?access_token=" + accessToken;
    
    存储在字节数组中的图像:byte fileBytes[]

    多部分请求中使用的哈希表(可以原样复制):

    发送我的多部分请求的类

    HttpMultipartRequest req = new HttpMultipartRequest(url, params, "upload_field", "original_filename.png", "image/png", fileBytes);
    
    您可以使用以下链接引用多部分请求

    一旦你完成了,我希望你可能已经成功地在facebook墙上发布了一张图片


    快乐编码..

    还有另一个Facebook API for Java ME,你能试试吗?是的,我也试过这个。它不支持在墙上张贴图像。
    Hashtable params = new Hashtable();
    params.put("custom_param", "param1");
    params.put("custom_param2", "param2");
    
    HttpMultipartRequest req = new HttpMultipartRequest(url, params, "upload_field", "original_filename.png", "image/png", fileBytes);