重新询问 Facebook 中被拒绝的权限不起作用
Posted
技术标签:
【中文标题】重新询问 Facebook 中被拒绝的权限不起作用【英文标题】:Re-ask declined permissions in Facebook not working 【发布时间】:2015-10-13 15:51:10 【问题描述】:假设用户提示输入权限 A、B、C 并拒绝 B。登录将失败,但是当我尝试再次执行登录时,不是显示我可以接受或撤销权限的对话框,而是显示消息的对话框显示“您已经授权应用名称”,并且权限 B 仍然被拒绝。
我正在使用此代码执行 Facebook 登录:
设置代码:
FacebookSdk.sdkInitialize(getApplicationContext());
...
if (mCallbackManager == null)
mCallbackManager = CallbackManager.Factory.create();
mDeniedPermissions = new ArrayList<>(Arrays.asList(...));
登录代码:
LoginManager.getInstance().registerCallback(mCallbackManager, new FacebookCallback<LoginResult>()
@Override
public void onSuccess(LoginResult loginResult)
...
mDeniedPermissions = loginResult.getRecentlyDeniedPermissions();
...
);
LoginManager.getInstance().logInWithReadPermissions(this, mDeniedPermissions);
我已尝试再次请求所有权限,仅针对已撤销的权限,执行LoginManager.getInstance().logOut()
以清除会话,但似乎没有任何效果...
一旦被撤销,只能使用 Facebook 应用或网站再次恢复它们。
我该如何解决这个问题?
ps:此问题与this one 相同,但该解决方案不适用于我的情况,我也尝试过。
【问题讨论】:
【参考方案1】:好的,我找到了问题所在。我使用的是 SDK 4.3.0。现在我正在使用 4.7.0 user2403096's answer to kyanro's post 工作。
【讨论】:
以上是关于重新询问 Facebook 中被拒绝的权限不起作用的主要内容,如果未能解决你的问题,请参考以下文章
从 Google PubSub 中提取消息不起作用 - 权限被拒绝
npm install -g less 不起作用:EACCES:权限被拒绝