墙上的帖子没有在Android应用程序的Facebook墙上显示

时间:2014-01-23 13:03:06

标签: android facebook

它可能是重复的问题,很抱歉请将其视为我的问题。 我正在从Android应用程序面对Facebook墙上的问题图像发布但图像不显示在墙上它在照片----->内可见您的照片部分,但我希望此图片应显示在用户时间线或墙上,请帮助我。

我的代码是

Bundle params = new Bundle();
    // Inflate Edit text for Facebook Message

    params.putString("method", "photos.upload");
     params.putString(Facebook.TOKEN, facebook.getAccessToken());
      params.putString("app_id", mAPP_ID); // I've tried with/without this,
                                            // same result

    params.putString("message", message);


    Bitmap b = BitmapFactory
            .decodeResource(getResources(), R.drawable.test);
    Log.i("Bitmap Image is here", "Bitmap" + b);
    if (b != null) {
        Log.i("Bitmap", "value");
    } else {
        Log.i("Bitmap", "null");
    }

    byte[] data = null;
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    b.compress(Bitmap.CompressFormat.JPEG, 100, baos);
    data = baos.toByteArray();
    if (data != null) {
        params.putByteArray("picture", data);
        Log.i("final", "value" + message);


         params.putString("access_token", facebook.getAccessToken());
        try {
            facebook.request("me");
            facebook.request("me/photos", params, "POST");
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }


    }

1 个答案:

答案 0 :(得分:0)

我前段时间遇到类似问题:当您在短时间内上传多张照片时,FB会将所有照片上传内容整合到时间轴上的单个帖子中。此外,它看起来你不提供自定义照片消息和隐私设置,所以你的代码可以大大简化(我假设你使用最新的FB android sdk,打开会话,并已经请求publish_stream权限):

Bitmap image2Upload = ...;
Request uploadRequest = Request.newUploadPhotoRequest(Session.getActiveSession(), image2Upload, null);

String photoId = null;
String postId = null;
try {
    Response uploadResponse = Request.executeAndWait(uploadRequest);    
    JSONObject json = uploadResponse.getGraphObject().getInnerJSONObject();
    photoId = json.getString("id");
    postId = json.optString("post_id");
} catch(Throwable t) {
    Log.e(TAG, "Photo upload request failed!", t);
}