在我的Android应用中,我希望用户在墙上“共享”我的应用,所以我希望他们在自己的墙上发布预定义的内容状态。
如何自定义墙状态? (我想添加我的应用程序图标和一些耀斑文本)。
答案 0 :(得分:5)
下载Facebook SDK并将其导入您的项目中。然后使用以下代码进行授权:
public void sendtoFacebook(){
facebookClient = new Facebook("<Your_APP_ID");
facebookClient.authorize(<Current_class>.this, new AuthorizeListener());
}
现在你必须添加以下方法:
class AuthorizeListener implements DialogListener {
public void onComplete(Bundle values) {
Bundle parameters = new Bundle();
parameters.putString("message", "<Message_you_want_to_send>");// the message to post to the wall
facebookClient.dialog(<Current_class>.this, "stream.publish", parameters, this);// "stream.publish" is an API call
}
@Override
public void onFacebookError(FacebookError e) {
}
@Override
public void onError(DialogError e) {
}
@Override
public void onCancel() {
}
}
将自动添加您的应用程序名称和图标:)
答案 1 :(得分:3)
在学习Facebook API之后,我遇到了这个page
所以现在我知道了bundle参数的所有选项。 谢谢大家的帮助!
答案 2 :(得分:2)
您也可以不使用SDK,只需通过共享网址
即可public void shareOnFacebook(View v) {
Uri uri = Uri.parse("http://m.facebook.com/sharer.php?u=http://yourdomain/page.html&t=YourMessage");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
}
您只需将内容页面/ html放在服务器上的某个位置,在您提供给共享者的网址下。
如果您希望共享消息中显示某个图片,请将其放在您共享的服务器上的html页面的元标记中:
<link rel="image_src" type="image/jpeg" href="http://yourdomain.com/promo/image.png" />
查看包含关联图片的此类促销页面的示例:http://www.modelme.co.uk/promo/amandaharrington
答案 3 :(得分:2)
这就是我使用Facebook SDK通过Facebook对话框设置内容的方法
Bundle parameters = new Bundle();
parameters.putString("app_id", "xxxxxxx");
parameters.putString("link", "https://play.google.com/store/apps/details?id=myappistasty");
parameters.putString("name", "This is the name of the link set in app.");
parameters.putString("caption", "This is Text that is specified in bt the aoo");
parameters.putString("picture", "www.urltoimage.com);
facebook.dialog(MainActivity.this, "feed", parameters, new DialogListener() {
etc...
http://developers.facebook.com/docs/reference/dialogs/feed/ 这是向我解释所有内容的链接,虽然它没有在java中,但表格给你一个好主意。