用于Android的Facebook SDK。
情况:在移动设备中不存在应用程序时进行Facebook分享。
**
遵循的步骤
- Web视图正在打开,用户可以成功登录。
- 登录后,Facebook的Web视图(发布对话框)打开一秒钟,但返回错误代码-11
**
错误响应:{Facebook对话框异常:错误代码:-11,消息:空,URL:空}
功能要求:无论是否存在Facebook应用程序,用户都可以共享链接。
//我的书面代码
// Facebook SDK初始化。
callbackManager = CallbackManager.Factory.create();
shareDialog = new ShareDialog(activity);
shareDialog.registerCallback(callbackManager, getShareCallback());
//共享功能。
ShareLinkContent linkContent = new ShareLinkContent.Builder()
.setContentUrl(uri)
.setQuote("XXXXXX")
.build();
Profile profile = Profile.getCurrentProfile();
if (ShareDialog.canShow(ShareLinkContent.class)) {
shareDialog.show(linkContent);
}
//共享回叫功能
@NonNull
private FacebookCallback<Sharer.Result> getShareCallback() {
return new FacebookCallback<Sharer.Result>() {
@Override
public void onSuccess(Sharer.Result result) {
shareCallback.onSuccess("Share Success");
}
@Override
public void onCancel() {
shareCallback.onError("Share Cancel");
}
@Override
public void onError(FacebookException error) {
shareCallback.onError("onError: " + error.toString());
}
};
}
//结果回调的活动
if (callbackManager == null) return;
callbackManager.onActivityResult(requestCode, resultCode, data);