SwiftUI中Facebook登录添加user_friends权限报错问题咨询
问题解决:Facebook登录添加权限时提示
Permission无user_friends成员 核心原因
你使用的user_friends是Facebook权限的字符串标识,但在Facebook iOS SDK的Permission枚举中,对应的成员采用小驼峰命名规范,正确写法是.userFriends,而非下划线分隔的格式。Swift枚举成员不支持下划线命名的枚举值,因此会触发找不到成员的报错。
修正后的代码
将权限数组中的.user_friends替换为.userFriends即可:
loginManager.logIn(permissions: [.publicProfile, .email, .userFriends], viewController: nil) { loginResult in // 你的登录回调逻辑 }
额外注意事项
- 快速查看合法枚举值:在Xcode中按住Command点击
Permission类型,可直接查看SDK定义的所有可用权限枚举成员,避免手动拼写错误。 - 权限审核要求:
userFriends这类非基础权限需要在Facebook开发者平台提交审核,审核通过后才能对普通用户生效,测试阶段仅开发者账号可正常获取该权限数据。 - SDK版本适配:确保使用最新版Facebook iOS SDK,旧版本可能存在枚举成员名称不一致的情况。
内容的提问来源于stack exchange,提问作者fsdeveloper
相关产品推荐
相关产品推荐

