2

ユーザーが友人の壁に画像を投稿できるようにするアプリを開発しました。ここでは、以下のコードを使用して、単一の静的画像のみを指定しました。

    params.putString("picture", FacebookUtility.HACK_ICON_URL);

HACK_ICON_URL、

    It is the URL of an Image...

しかし今、ユーザーが複数の画像から画像を選択してから、Friends Wall に投稿できるようにしたいと考えています。

FriendsList.java:

   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.HACK_ICON_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.");
        }
    }
}
4

0 に答える 0