複数の画像を表示し、ユーザーがセレクションを使用して Facebook Friend's Wall にそのうちの 1 つを投稿できるようにします。
まだユーザーが静止画像を Facebook ウォールに投稿できるようにしていますが、ユーザーが複数の画像から画像を選択してからウォールに投稿できるようにしたいと考えています。
このコードを使用して、以下のコードを使用して特定の画像を wall に投稿しています。
params.putString("picture", FacebookUtility.STATIC_IMAGE_URL);
静的画像を投稿するコード:
public void onItemClick(AdapterView<?> adapterView, View view,
int position, long id) {
try {
final long friendId;
friendId = jsonArray.getJSONObject(position).getLong("uid");
String name = jsonArray.getJSONObject(position).getString("name");
new AlertDialog.Builder(this)
.setTitle(R.string.post_on_wall_title)
.setMessage(
String.format(getString(R.string.post_on_wall),
name))
.setPositiveButton(R.string.yes,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
Bundle params = new Bundle();
params.putString("to",
String.valueOf(friendId));
params.putString("caption",
getString(R.string.app_name));
params.putString("description",
getString(R.string.app_desc));
params.putString("link",
"http://www.google.com");
params.putString("picture",
FacebookUtility.STATIC_IMAGE_URL);
params.putString("name",
getString(R.string.app_action));
FacebookUtility.facebook
.dialog(FriendsList.this,
"feed",
params,
(DialogListener) new PostDialogListener());
}
}).setNegativeButton(R.string.no, null).show();
} catch (JSONException e) {
showToast("Error: " + e.getMessage());
}
}
public class PostDialogListener extends BaseDialogListener {
@Override
public void onComplete(Bundle values) {
final String postId = values.getString("post_id");
if (postId != null) {
showToast("Message posted on the wall.");
} else {
showToast("No message posted on the wall.");
}
}
}