私のプロジェクトでは、最初のアクティビティで自分のFacebookアカウントを認証し、今日の誕生日を持つ友人のID、名前、誕生日、写真を取得しました。私はそれらを次の活動に束ね、リストビューに写真と名前を表示しました。リストをクリックすると、壁にメッセージを投稿したいと思います。私はリストビューをクリックしながら、友人の壁に投稿するために次のコードを使用しました。投稿者facebook wall
public static String APP_ID = "my_app_id";
public static Facebook authenticatedFacebook = new Facebook(APP_ID);
私のリストビューonclickitemlistnerでは、次のコードを使用しました。 id_listは、友人のIDを含むArrayListです。
try{
Bundle parameters = new Bundle();
JSONObject attachment = new JSONObject();
try {
attachment.put("message", "Many more returns of the day");
} catch (JSONException e) {
}
parameters.putString("attachment", attachment.toString());
parameters.putString("target_id", id_list.get(position));
parameters.putString("method", "stream.publish");
String response = authenticatedFacebook.request(parameters);
Log.v("response", response);
}
catch(Exception e){}
私の回答で無効なAPIキーがあります。しかし、私は正しい鍵を使いました。
11-10 16:21:53.987: V/response(396): {"error_code":101,"error_msg":"Invalid API key","request_args":[{"key":"method","value":"stream.publish"},{"key":"attachment","value":"{\"message\":\"Many more returns of the day\"}"},{"key":"format","value":"json"},{"key":"target_id","value":"100000635832872"}]}
私は自分のアカウントを認証した最初のアクティビティで、検索した友人のIDを使用して同じコードを投稿しました。それはうまく動作します。しかし、リストビューでそれらを表示する2番目のアクティビティでは機能しません。セッションが有効かどうかを確認しました。無効になります。
あなたは友人がアプリをhi wallにコメントすることを許可していないと思います。それじゃない? FBにダイアログが表示され、アプリケーションにデータへのアクセスを許可するかどうかを尋ねる覚えがないのですか? – Arslan
彼の壁に投稿する方法。どのように私はこれを達成することができます私に提案してください。 – Manikandan
アクティビティで同じコードを試してみましたが、ここで自分のアカウントを認証しました。それはうまく動作し、メッセージは友人の壁に投稿されます。問題はセッションにあると思う。 – Manikandan