私の目標は、承認を求めることなく、Android アプリからユーザーの Facebook ウォールに写真を投稿することです。
次のコードを使用して写真を公開します。
String comment = editText.getText().toString();
byte[] data;
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);
data = baos.toByteArray();
Bundle postParams = new Bundle();
postParams.putString("message", comment);
postParams.putByteArray("picture", data);
Request.Callback callback = new Request.Callback() {
public void onCompleted(Response response) {
FacebookRequestError error = response.getError();
if (error != null) {
Toast.makeText(SendActivity.this, "Facebook post error.",
Toast.LENGTH_SHORT).show();
Log.e(TAG, error.toString());
} else {
Toast.makeText(SendActivity.this, "Posted to facebook!",
Toast.LENGTH_LONG).show();
}
}
};
Request request = new Request(session, "me/photos", postParams,
HttpMethod.POST, callback);
RequestAsyncTask task = new RequestAsyncTask(request);
task.execute();
Facebook アプリの設定で、user_photos と publish_actions の 2 つの権限を追加しました。アプリはサンドボックス モードではありません。
アプリを使って写真をアップロードすると、アプリ名と同じ名前のアルバムに移動し、この写真がアプリからアップロードされたというラベルがあるので、承認または拒否する必要があります。その「承認」段階なしで写真を投稿するにはどうすればよいですか?