0

我使用以下代码将图像上传到我的 Facebook 墙。

    try {
    bitmap=BitmapFactory.decodeFile(imagePostion);
    HttpClient httpClient = new DefaultHttpClient();
    HttpContext localContext = new BasicHttpContext();
    HttpPost httpPost = new HttpPost(
   "https://graph.facebook.com/me/photos?access_token="+ a);
    MultipartEntity entity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
    ByteArrayOutputStream bos = new ByteArrayOutputStream();
    bitmap.compress(CompressFormat.PNG, 100, bos);
    byte[] data = bos.toByteArray();
    entity.addPart("source", new ByteArrayBody(data, imagePostion));
    httpPost.setEntity(entity);
    HttpResponse response = httpClient.execute(httpPost,localContext);
    Log.v("Response !!!!!!!!",response+"");
    } catch (UnsupportedEncodingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace()
    } catch (ClientProtocolException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }

我在这一行得到空指针异常

ByteArrayOutputStream bos = new ByteArrayOutputStream();

需要帮忙。

4

2 回答 2

0

最后我得到它的工作。MultipartEntity 适用于 Android 2.1 及更高版本。我曾在 1.6 中尝试过。这就是我得到这个错误的原因。

于 2012-06-07T14:18:04.763 回答
0

这里没有要上传的图像位图。创建一个上传图像位图。

添加此行

bitmap.compress(CompressFormat.JPEG, 100, bos);

ByteArrayOutputStream bos = new ByteArrayOutputStream();

于 2012-06-06T17:14:07.220 回答