我疯了。
我需要在我的Android应用程序中使用简单的Facebook共享功能,用户可以在其中共享一些文本和保存在应用程序中的图像。
在确定使用意图在这种情况下无用之后,我开始使用Facebook SDK。
在花费了很多时间之后,当我直接从设备上的Android Studio运行应用程序时,我终于可以分享图片了。因此,所有的Facebook应用程序ID和内容提供程序设置都可以正常工作。
最后,我创建了一个.apk并对其进行了测试。在这种情况下,共享不起作用。共享对话框会在2秒后自动显示并消失。
在搜索可能的答案后,我登录了我的脸书开发者帐户并更改了以下设置:
但这并没有帮助。
最后,我在我的脸书开发者帐户中看到我可以提交申请以供审批:
但我想知道,为什么我应该这样做才能实现简单的共享功能。有人知道,如果这个案件需要facebook的提交过程吗?
我很感激你的帮助。
这是我的共享代码(就像我说的,一切正常,当我直接从Android Studio运行应用程序时,我能够共享图像):
if (FacebookDialog.canPresentShareDialog(getActivity().getApplicationContext(),
FacebookDialog.ShareDialogFeature.SHARE_DIALOG)) {
OpenGraphObject recipe = OpenGraphObject.Factory.createForPost("my_namespace:object");
recipe.setProperty("title", getResources().getString(R.string.share_title));
recipe.setProperty("description", getResources().getString(R.string.share_text));
recipe.setProperty("og:image", getImageContentPathForRecipeUri(mRecipe.getImageUri()));
OpenGraphAction action = GraphObject.Factory.create(OpenGraphAction.class);
action.setType("og.likes");
action.setProperty("object", recipe);
FacebookDialog shareDialog = new FacebookDialog.OpenGraphActionDialogBuilder(getActivity(), action, "object")
.setFragment(this)
.build();
facebookUIHelper.trackPendingDialogCall(shareDialog.present());
}
答案 0 :(得分:1)
您需要提交审核才能使用publish_actions权限。如果您使用共享对话框发布到Facebook,则无需发布到Facebook。此外,不允许预先填写人们通常会输入消息的文本。
希望这有帮助!
答案 1 :(得分:1)