0

これが私のFacebookに写真をアップロードするためのコードです:

Bundle parameters = new Bundle();
parameters.putString("message", msg);
byte[] imgData = getImage("http://bandungraos.in/wp-content/resto/1/gallery/kepiting1.jpg");
parameters.putByteArray("picture", imgData);
if (imgData != null) {
    try {
        String response = facebook.request("me/photos", parameters,"POST");
            System.out.println(response);
        } catch (IOException e) {
            e.printStackTrace();
        }
}
.....

private byte[] getImage(String url) {

    try {
        URL imgUrl = new URL(url);
        HttpURLConnection cn = (HttpURLConnection) imgUrl.openConnection();
        cn.setDoInput(true);
        cn.connect();
        int length = cn.getContentLength();
        byte[] imgData = new byte[length];
        InputStream is = cn.getInputStream();
        is.read(imgData);
        return imgData;

    } catch (MalformedURLException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    return null;

}

アクセス トークンまたは imgData が null でないことを確認しました

エラーはありませんが、Facebook で画像が見つかりません。

前もって感謝します

4

2 に答える 2

0

写真接続に関するユーザーオブジェクトのドキュメントによると、画像パラメータの名前は「画像」ではなく「ソース」です。試してみましたか。

Bundle parameters = new Bundle();
parameters.putString("message", msg);
parameters.putByteArray("source", getImage("..."));
于 2012-05-21T08:42:50.173 に答える
0

私は同じ問題を抱えていて、このコードを使用しました `

private void upload_FB(Bitmap photo2) {
        // TODO Auto-generated method stub
        Calendar c = Calendar.getInstance();
        String name = c.getTime().toString();

        AsyncFacebookRunner fruner = new AsyncFacebookRunner(facebook);
        Log.d("adr", mCurrentPhotoPath);
        if(photo2!=null && mCurrentPhotoPath!=null){
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            photo2.compress(Bitmap.CompressFormat.JPEG, 100, baos);
            byte[] bMapArray = baos.toByteArray();
            Bundle params = new Bundle();
            params.putByteArray("photo",bMapArray);
            params.putString("caption", name);
            fruner.request("me/photos",params,"POST",new PhotoUploadListener(),null);


        }else
            Toast.makeText(ctx, "ERROR", Toast.LENGTH_LONG).show();
    }

前提を追加することを忘れないでくださいphoto_upload `

于 2012-07-02T11:37:05.827 に答える