如何在 facebook sdk 3.0 for android 中创建具有扩展权限的 facebook 会话?
问问题
2991 次
3 回答
3
你必须先登录用户。然后当您需要扩展权限时,请执行以下操作:(我已将其用于发布权限)
private static final List<String> PERMISSIONS = Arrays.asList("publish_actions");
private static final int REAUTH_ACTIVITY_CODE = 100;
// Check for publish permissions
List<String> permissions = session.getPermissions();
if (!isSubsetOf(PERMISSIONS, permissions)) {
Session.ReauthorizeRequest reauthRequest = new Session
.ReauthorizeRequest(this, PERMISSIONS)
.setRequestCode(REAUTH_ACTIVITY_CODE);
session.reauthorizeForPublish(reauthRequest);
return;
}
isSubsetOf()
:
private boolean isSubsetOf(Collection<String> subset, Collection<String> superset) {
for (String string : subset) {
if (!superset.contains(string)) {
return false;
}
}
return true;
}
于 2013-02-28T14:28:07.807 回答
1
如果您使用 SDK(3.0 版)提供的 facebook LoginButton,它将为您处理大部分会话管理,您可以轻松地请求权限,如下所示:
authButton.setReadPermissions(Arrays.asList("user_location",
"user_birthday", "user_likes"));
请参阅文档以获取完整的教程。
于 2013-02-28T11:25:18.097 回答
0
您可以设置权限:请参阅此Graph api 不返回用户电子邮件 ID 并设置从 Facebook 登录获取用户电子邮件 ID 的权限
于 2013-10-22T07:46:18.943 回答