Facebook SDK for Android 4.1.0 共享对话框取消
Posted
技术标签:
【中文标题】Facebook SDK for Android 4.1.0 共享对话框取消【英文标题】:Facebook SDK for Android 4.1.0 share dialog cancel 【发布时间】:2015-06-18 18:30:11 【问题描述】:我正在我的应用中实现 Facebook 分享功能。我从示例https://developers.facebook.com/docs/sharing/android(共享对话框)中获取代码
FacebookCallback 正在实现 3 个方法 onSuccess、onCancel、onError。
shareDialog.registerCallback(callbackManager, new FacebookCallback<Sharer.Result>()
@Override
public void onSuccess(Sharer.Result result)
Timber.e("onSuccess " + result.getPostId());
@Override
public void onCancel()
Timber.e("onCancel");
@Override
public void onError(FacebookException e)
Timber.e("onError");
);
我想知道用户是否取消了共享对话框而不是共享内容。但是由于某些原因,如果用户成功共享内容或取消对话,则在这两种情况下都会调用 onSuccess 并且 result.getPostId() 为 null。为什么如果用户按下后不会调用 onCancel,为什么即使帖子已成功分享,result.getPostId() 仍为 null?
【问题讨论】:
【参考方案1】:只有在用户授权您的应用程序(即通过您的应用程序登录 Facebook)时,您才会获得 onCancel。
只有当您的应用也拥有 publish_actions 权限时,您才会获得 postId。
见https://developers.facebook.com/docs/android/troubleshooting#onsuccess
【讨论】:
以上是关于Facebook SDK for Android 4.1.0 共享对话框取消的主要内容,如果未能解决你的问题,请参考以下文章
有没有办法知道用户使用 facebook SDK for Android 在 facebook 上有蓝色勾号?
Facebook SDK 3.7 for Android 请求电子邮件权限
Can't get Access Token for Facebook SDK 4.8.1 for Android (OR) FacebookCallback is not called (OR) r
Facebook Android SDK & java.lang.NullPointerException