Problem in Naming the Audio file in Facebook Post in Android
Friends, I posted the Audio link to Facebook Friends wall without Dialog. I'm able to play the Posted Audio link within Facebook, but i am unable to give title , name for it. Refer the Picture - I want to Post like
..Following is my code :
try{
String userID="1000021233268431111";
Bundle params = new Bundle();
params.putString("name", "name of link");
params.putString("title", "title of link");
params.putString("descrption", "descrption of link");
params.putString("caption", "Get utellit to send messages like this!");
params.putString("link", "http://www.looptvandfilm.com/blog/Radiohead%20-%20In%20Rainbows/01%20-%20Radio开发者_开发技巧head%20-%2015%20Step.MP3");
params.putString("type", "mp3");
params.putString("source", "http://www.looptvandfilm.com/blog/Radiohead%20-%20In%20Rainbows/01%20-%20Radiohead%20-%2015%20Step.MP3");
String response = facebook.request(((userID == null) ? "me" : userID) + "/feed", params, "POST");
Log.v("response", response);
} catch(Exception e){
}
If i try to use the JSON Array to add attachment,nothing is added in the Parameter and i am getting Empty post like this:
Using JSON ARRAY mu code is :
Bundle parameters = new Bundle();
JSONObject attachment = new JSONObject();
try {
JSONObject media = new JSONObject();
media.put("type", "mp3");
media.put("src", "http://www.looptvandfilm.com/blog/Radiohead%20-%20In%20Rainbows/01%20-%20Radiohead%20-%2015%20Step.MP3");
media.put("title", "Listen to your message");
media.put("artist", "By: utellit for Android");
media.put("album", "Utellit");
attachment.put("media", new JSONArray().put(media));
} catch (JSONException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
attachment.put("message", "Messages");
attachment.put("name", "Get utellit to send messages like this!");
attachment.put("href", "http://www.looptvandfilm.com/blog/Radiohead%20-%20In%20Rainbows/01%20-%20Radiohead%20-%2015%20Step.MP3");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
parameters.putString("attachment", attachment.toString());
String response =facebook.request(((userID == null) ? "me" : userID) + "/feed",parameters, "POST");
Log.v("response", response);
Finally i got it.. Here is my solution :
try{
String link="LINK that should goes if yoy click Get utellit to send messages like this";
String amazon_link=".mp3 link that should play inside Facebook";
Bundle parameters = new Bundle();
JSONObject attachment = new JSONObject();
try {
JSONObject media = new JSONObject();
media.put("type", "mp3");
media.put("src", amazon_link);
media.put("title", "Listen to your message");
media.put("artist", "By: utellit for Android");
media.put("album", "Utellit");
attachment.put("media", new JSONArray().put(media));
} catch (JSONException e1) {}
try {
attachment.put("message", "Messages");
attachment.put("name", "Get utellit to send messages like this!");
attachment.put("href", link);
} catch (JSONException e) {}
parameters.putString("attachment", attachment.toString());
parameters.putString("message", "Text is lame. Listen up:");
parameters.putString("target_id", "xxxx"); // target Id to post
parameters.putString("method", "stream.publish");
String response = facebook.request(parameters);
}
catch(Exception e){}
In facebook.request
method we should send only parameters and the Method of post should added in Attachments
Finally my Post in Facebook looks likes this :
精彩评论