我使用的是最新版本的 Facebook SDK(2015 年 5 月)。用户通过 Android 应用程序中的 Facebook 登录 SDK 登录后,如何以编程方式撤销/删除用户的特定权限(或全部)?我在开发人员文档中找到了以下内容,但我不确定如何以编程方式执行此操作。谢谢。
最佳答案
我在最新版本的 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 来撤销访问权限
更多信息:
关于android - 如何在 Android 中为 Facebook Login SDK 撤销特定(或所有)用户权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30232283/