android - 如何在 Android 中为 Facebook Login SDK 撤销特定(或所有)用户权限

标签 android facebook facebook-graph-api facebook-login facebook-android-sdk

我使用的是最新版本的 Facebook SDK(2015 年 5 月)。用户通过 Android 应用程序中的 Facebook 登录 SDK 登录后,如何以编程方式撤销/删除用户的特定权限(或全部)?我在开发人员文档中找到了以下内容,但我不确定如何以编程方式执行此操作。谢谢。

enter image description here

最佳答案

我在最新版本的 Facebook Android SDK(Graph API 2.0+ 及更高版本)中找到了如何撤销用户权限的解决方案。这是 2015 年 5 月的数据。开发人员需要使用 GraphRequest.newGraphPathRequest() 并设置 GraphPath 并将 HttpMethod 设置为 DELETE。 p>

public void graphRevokeUserStatusPermission(){
        AccessToken accessToken = AccessToken.getCurrentAccessToken();
        if(accessToken == null)
            return;

        GraphRequest request = GraphRequest.newGraphPathRequest(
                accessToken,
                "/me/permissions/user_status",
                new GraphRequest.Callback() {
                    @Override
                    public void onCompleted(GraphResponse response) {
                        // response
                    }
                }
        );
        request.setHttpMethod(HttpMethod.DELETE);
        request.executeAsync();
    }

如果您想撤销用户访问权限,只需将图形路径更改为

    String userId = accessToken.getUserId();
    //url to revoke login DELETE {user_id}/permissions
    userId + "permissions"

并且不要忘记在调用 onCompleted 方法时清除信息 LoginManager.getInstance().logOut() ,这个注销方法不会撤销访问权限,它只是清除 token 和配置文件信息,因此开发人员需要请求 url 来撤销访问权限

更多信息:

Facebook Permissions Revoking

关于android - 如何在 Android 中为 Facebook Login SDK 撤销特定(或所有)用户权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30232283/

相关文章:

android - 设备关闭时 Oneplus 中的蓝牙 Gatt 连接问题

facebook - 在服务器端Azure移动应用程序上提供 "login_hint"

Android 显示通知不起作用

java - facebook 登录后,facebook android 通话功能无法使用

facebook - 从仪表板中删除 Facebook 登录产品

java - 通过 java API 注销 Facebook 需要点击什么 URL?

facebook - 从公共(public)信息页面获取好友列表中常见的 "likes"的最佳方法

php - 如何使用 PHP SDK 从 Facebook 获取我的所有照片?

android - LazyColumn 比垂直滚动的 Column 慢

Android滑动和addforce统一