0

SD カード フォルダー内のすべての写真を facebook アルバムにアップロードしようとしています。同じために次のコードを書きました。すべての画像ファイルのリストです。しかし、プログラムは例外に遭遇します。理由がわかりません。この点に関する意見は歓迎します。

    RequestBatch requestBatch = new RequestBatch();
    for (final String requestId : fileNames) {
        Bitmap image = BitmapFactory.decodeFile(requestId);
        Request request = Request.newUploadPhotoRequest(Session.getActiveSession(), image, new Request.Callback() {
            @Override
            public void onCompleted(Response response) {
                showPublishResult("Photo Post ", response.getGraphObject(), response.getError());
            }
        });

        requestBatch.add(request);
    }
    requestBatch.executeAsync();
}

アップデート :

OutOfMemoryException が発生しています。つまり、sdk はファイルをキャッシュしており、その結果、これが起こっています。ビットマップ画像を request として送信するのではなく、同じことを達成する他の方法はありますか?

4

1 に答える 1

1

上記のアプローチの問題は、executeAsync でした。

新しいスレッドを作成し、それをデーモンにして (アプリの終了時でもアップロードがキューを終了できるように)、executeAndWait を使用して発行する必要があります。このようにして、すべてのファイルが連続してアップロードされます。

新しいコードが必要な場合は、ここにメッセージを送信してください。投稿します

于 2013-02-24T22:23:59.440 に答える