ShareDialog 立即关闭
Posted
技术标签:
【中文标题】ShareDialog 立即关闭【英文标题】:ShareDialog dismiss immediately 【发布时间】:2017-09-06 17:11:42 【问题描述】:我正在尝试在我的 android 应用中添加 ShareFacebook 按钮。
代码在我使用我的 FB 帐户时有效,我在 Facebook 开发者控制台中使用的那个,我可以毫无问题地在我的 FB 上分享链接。
但是,当我使用其他 FB 帐户测试该应用时,分享对话框出现又消失 非常快。
我不知道为什么,有什么帮助吗?
这是我的代码:
facebook.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
ShareDialog shareDialog = new ShareDialog(ScoreActivity.this);
if (ShareDialog.canShow(ShareLinkContent.class))
ShareLinkContent linkContent = new ShareLinkContent.Builder()
.setContentUrl(Uri.parse("..."))
.build();
shareDialog.show(linkContent);
);
既然我可以和我的Fb分享,那我猜代码没问题,所以可能是配置或参数问题,但我不知道从哪里开始。有什么帮助吗?
【问题讨论】:
【参考方案1】:您是否找到任何堆栈跟踪? 你必须看看你是否已经初始化了 facebook SDK
FacebookSdk.sdkInitialize(getApplicationContext());
callbackManager = CallbackManager.Factory.create();
shareDialog = new ShareDialog(this);
// this part is optional
shareDialog.registerCallback(callbackManager, new FacebookCallback<Sharer.Result>() ... );
如果它正在显示和关闭,那么必须有
<provider android:authorities="com.facebook.app.FacebookContentProviderAPP_ID"
android:name="com.facebook.FacebookContentProvider"
android:exported="true"/>
【讨论】:
我已经初始化了 FBSdk 并在 manifest.xml 中添加了提供程序 哦,我明白了...确保您的应用程序仅适用于您在 Facebook 中添加的测试 ID,如果您将使用其他 ID,则无论何时部署,Facebook 都会拒绝请求该应用程序,请确保修改配置发布,我也遇到过这个问题.. 你能解释一下如何修改发布的配置吗? 11.禁用开发模式developers.facebook.com/docs/apps/register#development-mode 新的 Facebook 应用默认处于开发模式。这将已发布的操作和相关对象(例如朋友标记)限制为应用程序开发人员拥有的 Facebook 时间线。一旦您的应用程序可供公开使用,您就可以从开发模式切换到公开模式,以允许您的应用程序与与您的应用程序无关的 Facebook 帐户进行交互。 阅读此页面,如果您觉得我的答案有用,请将其标记为最终答案。 :)以上是关于ShareDialog 立即关闭的主要内容,如果未能解决你的问题,请参考以下文章
Facebook iOS SDK,使用 ShareDialog(不是 GraphAPI)分享带有标题的图像
Android Facebook SDK 4.0 ShareDialog 不显示长文本
FacebookShare 0.3.2 Swift ShareDialog 控制台错误
强制 FBSDK ShareDialog React Native 自动使用浏览器
FBSDK ShareDialog 显示“无效的应用程序 ID:提供的应用程序 ID 看起来不像有效的应用程序 ID。”