【问题标题】:Android Facebook Share ,Description not showingAndroid Facebook 分享,说明未显示
【发布时间】:2016-03-07 07:24:30
【问题描述】:
我正在使用 facebook sdk 在 facebook 上分享。
我的代码在下面,它工作正常。但是当我想将内容 url 更改为 Application playstore 链接时,内容描述不会显示到 facebook 中。
有什么解决办法还是我犯了愚蠢的错误?
if (ShareDialog.canShow(ShareLinkContent.class)) {
ShareLinkContent linkContent = new ShareLinkContent.Builder()
.setContentTitle(AppConstant.RESTURENT_NAME)
.setContentDescription("Hi,You should check out Bangkok Eatery.")
.setContentUrl(Uri.parse("http://developers.facebook.com/android"))
.build();
shareDialog.show(linkContent);
}
【问题讨论】:
标签:
android
facebook
sdk
share
【解决方案1】:
ShareDialog shareDialog = new ShareDialog(this);
CallbackManager callbackManager = CallbackManager.Factory.create();
shareDialog.registerCallback(callbackManager, new
FacebookCallback<Sharer.Result>() {
@Override
public void onSuccess(Sharer.Result result) {
}
@Override
public void onCancel() {
}
@Override
public void onError(FacebookException error) {
}
});
ShareLinkContent linkContent = new ShareLinkContent.Builder()
.setContentTitle(getString(R.string.app_name))
.setContentDescription("")
.setContentUrl(Uri.parse("your link"))
.build();
shareDialog.show(linkContent);
【解决方案2】:
FacebookSdk 在 onCreate 方法中初始化
CallbackManager callbackManager;
ShareDialog shareDialog;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FacebookSdk.sdkInitialize(getApplicationContext());
callbackManager = CallbackManager.Factory.create();
shareDialog = new ShareDialog(this);
// this part is optional
shareDialog.registerCallback(callbackManager, new FacebookCallback<Sharer.Result>() { ... });
}
if (ShareDialog.canShow(ShareLinkContent.class)) {
ShareLinkContent linkContent = new ShareLinkContent.Builder()
.setContentTitle(AppConstant.RESTURENT_NAME)
.setContentDescription("Hi,You should check out Bangkok Eatery.")
.setContentUrl(Uri.parse("http://developers.facebook.com/android"))
.build();
shareDialog.show(linkContent);
}