gpt4 book ai didi

android - Facebook SDK 3.0 - 附加权限

转载 作者:太空狗 更新时间:2023-10-29 16:42:45 24 4
gpt4 key购买 nike

有一项任务是为服务器端访问 token 提供多个权限(多个读取和发布)。在 3.0 版中,有 2 个独立的 session 打开方法:openForRead 和 openForPublish。

一开始应用程序请求读取权限:

private void authorizeFacebook() {
if (DEBUG)
Log.d(TAG, "Facebook authorization");
Session session = Session.getActiveSession();
if (!session.isOpened() && !session.isClosed()) {
session.openForRead(this.createReadRequest());
} else {
Session.openActiveSession(this, true, mFacebookSessionCallback);
}
}

但是在状态回调之后,应用程序请求发布权限:

if (session.isOpened() && !session.getPermissions().contains("publish_stream")) {
if (DEBUG)
Log.d(TAG, "Facebook, Request additional permission: Publish Stream");

session.requestNewPublishPermissions(new NewPermissionsRequest(this, Arrays.asList("publish_stream")).setCallback(mFacebookSessionCallback).setLoginBehavior(SessionLoginBehavior.SUPPRESS_SSO));

而且在用户体验上存在一个巨大的问题,因为在额外的权限请求之后,出现 facebook 登录表单,并且用户必须再次输入凭据......它是否按照 SDK 开发人员的设计工作?..还是我做错了什么?

最佳答案

这个答案可能来晚了。我遇到了类似的问题,适用于 Android 的 FB SDK 3.0。这是 SDK 中的一个错误,他们已在 3 月 20 日发布的适用于 Android 的 FB SDK 3.0.1 中修复了它。 change log提及:

The Web View Login dialog includes the token information for scenarios where new permissions are being requested. This avoids having the user having to enter their login credentials whenever new permissions are requested for a session.

升级后重试。从 here 获取新的 SDK .

关于android - Facebook SDK 3.0 - 附加权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15067913/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com