使用Facebook SDK,我可以登录并将我的access_token
存储到数据库中。当我尝试创建帖子时,由于以下问题,我的手机和模拟器上的Facebook墙仍然是空的:
1)我从数据库中获取一个access_token
,并将该access_token
传递给Facebook,但我不允许在墙上发帖。
2)如果不打开对话框,我将无法发布消息。
mPostButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
String message = "Post this to my wall";
Bundle params = new Bundle();
params.putString("message", message);
mAsyncRunner.request("me/feed", params, "POST", new WallPostRequestListener());
}
});
public class WallPostRequestListener extends BaseRequestListener {
public void onComplete(final String response) {
Log.d("Facebook-Example", "Got response: " + response);
String message = "<empty>";
try {
JSONObject json = Util.parseJson(response);
message = json.getString("message");
} catch (JSONException e) {
Log.w("Facebook-Example", "JSON Error in response");
} catch (FacebookError e) {
Log.w("Facebook-Example", "Facebook Error: " + e.getMessage());
}
final String text = "Your Wall Post: " + message;
Example.this.runOnUiThread(new Runnable() {
public void run() {
mText.setText(text);
}
});
}
}
如何在不打开对话框的情况下发布到Facebook?
发布于 2010-12-07 20:11:21
我申请了以下代码,可以成功地在墙上发布我的消息。
public void postOnWall(String msg) {
Log.d("Tests", "Testing graph API wall post");
try {
String response = mFacebook.request("me");
Bundle parameters = new Bundle();
parameters.putString("message", msg);
parameters.putString("description", "test test test");
response = mFacebook.request("me/feed", parameters,
"POST");
Log.d("Tests", "got response: " + response);
if (response == null || response.equals("") ||
response.equals("false")) {
Log.v("Error", "Blank response");
}
} catch(Exception e) {
e.printStackTrace();
}
}
发布于 2011-12-05 00:33:33
我在http://www.integratingstuff.com/2010/10/14/integrating-facebook-into-an-android-application/更新了我的教程,它现在准确地回答了这个问题。它基于Ankit的答案,并与Ankit的答案基本相同,但指导人们从头到尾实现整个过程。
发布于 2010-11-18 20:27:28
这并不是说有些东西在没有通知用户的情况下就被贴到了墙上。当用户允许你的应用程序时,Android Facebook sdk会显示另一个页面,其中有一个你的应用程序发送的文本,以及一个用户可以在墙上写字的textBox,类似于我附加的屏幕截图
移动设备上的实际布局略有不同,但格式相同。这个过程在facebook android sdk的示例中得到了很好的展示。
现在检查这篇文章中提出的问题:
脸书连接安卓--使用stream.publish @ http://api.facebook.com/restserver.php'>[Facebook连接安卓--使用stream.publish @ http://api.facebook.com/restserver.php](https://stackoverflow.com/questions/2140952/facebook-connect-android-using-stream-publish-http-api-facebook-com-restse)
在问题中查找这些: postParams.put()时,一些JAVA文件中也会有类似类型代码行。您可以使用这些行将数据发布到Facebook。
例如:
postParams.put("user_message", "TESTING 123");
是一条信息,
postParams.put("attachment", "{\"name\":\"Facebook Connect for Android\",\"href\":\"http://code.google.com/p/fbconnect-android/\",\"caption\":\"Caption\",\"description\":\"Description\",\"media\":[{\"type\":\"image\",\"src\":\"http://img40.yfrog.com/img40/5914/iphoneconnectbtn.jpg\",\"href\":\"http://developers.facebook.com/connect.php?tab=iphone/\"}],\"properties\":{\"another link\":{\"text\":\"Facebook home page\",\"href\":\"http://www.facebook.com\"}}}");
是为应用程序、描述、标题等提供图标的行。
https://stackoverflow.com/questions/4213767
复制相似问题