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();
    }

そして、この行でnullポインタ例外が発生しました

ByteArrayOutputStream bos = new ByteArrayOutputStream();

助けが必要。

4

2 に答える 2

0

アップロードする画像ビットマップはありません。アップロード画像のビットマップを作成します。

この行を追加

ビットマップ.compress(CompressFormat.JPEG、100、bos);

ByteArrayOutputStream bos = new ByteArrayOutputStream();

于 2012-06-06T17:14:07.220 に答える
0

最後に私はそれを動作させます。MultipartEntityはAndroid2.1以降で動作します。1.6で試しました。そのため、エラーが発生しました。

于 2012-06-07T14:18:04.763 に答える