经过长期努力授予发布权限(publish_actions)后,他们拒绝了我的请求
您的应用使用社交插件或分享对话框将内容分享到Facebook。这些不需要写入权限,也不需要提交审核。我们的共享文档包含更多信息,您可以在此处找到最新的插件版本。
这是我用于发布的代码,我使用的是shareDialog,但我不知道如何分享它,任何人都可以帮助我
mShareDialog = new ShareDialog(this);
public void publishStory(String Scontent) {
AccessToken token = AccessToken.getCurrentAccessToken();
if (token == null) {
LoginWithPublishPermission();
return;
}
Set<String> permissions = AccessToken.getCurrentAccessToken().getPermissions();
if (!isSubsetOf(PUBLISH_PERMISSIONS, permissions)) {
Log.d("FB TAG", "facebook publish permission login");
pendingPublishReauthorization = true;
LoginWithPublishPermission();
return;
}
if (mShareDialog.canShow(ShareLinkContent.class)) {
ShareLinkContent content = new ShareLinkContent.Builder()
.setContentUrl(Uri.parse(AppURL))
.setContentTitle(getString(R.string.share_from_leaynik))
.setContentDescription(Scontent)
.build();
mShareDialog.show(content);
} else {
try {
String sharerUrl = "http://www.facebook.com/sharer/sharer.php?u=" + AppURL;
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(sharerUrl));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
} catch (ActivityNotFoundException e) {
e.printStackTrace();
}
}
}
private void LoginWithPublishPermission() {
LoginManager.getInstance().logInWithPublishPermissions(Disease_Details.this, PUBLISH_PERMISSIONS);
}
答案 0 :(得分:1)
我的解释是,Facebook要求您使用正常的共享机制,而不是通过publish_actions
发布Facebook帖子的方向Facebook是非常严格的,可以自动发布到它没有用户自动发布人工干预。
所以我的建议是从你要求的facebook权限中删除publish_actions
。请使用如下的普通共享功能: -
Intent share = new Intent(Intent.ACTION_SEND);
share.putExtra(Intent.EXTRA_SUBJECT, "YOUR MESSAGE TITLE");
share.setType("text/plain");
share.putExtra(Intent.EXTRA_TEXT, "YOUR MESSAGE");
startActivity(Intent.createChooser(share, "Sharing the App"));
希望这有帮助