请求支持User Assigned Device Name权限适配App Store Connect
解决User Assigned Device Name权限支持App Store Connect的问题
核心问题原因
你当前的权限仅在Development/Ad Hoc模式生效,大概率是因为权限申请阶段未明确说明将用于正式App Store发布版本,苹果默认仅开放测试环境权限。以下是具体解决步骤:
更新权限申请说明
- 登录App Store Connect,进入你的应用页面,依次打开「App Information」>「App Privacy」,找到与设备名称相关的权限条目,补充说明该权限将用于正式发布版本的局域网跨设备文件传输功能,明确告知苹果权限的使用场景并非仅限测试。
- 若之前的权限申请通道未提及发布用途,可通过Apple Developer后台的「Request Access」入口,重新提交补充说明,强调该功能是用户核心需求,且不会收集或滥用设备名称之外的信息。
调整开发者后台的App ID配置
- 进入Apple Developer后台的「Certificates, Identifiers & Profiles」,找到对应应用的App ID。
- 编辑App ID,确认「User Assigned Device Name」权限已被勾选(确保是全局开启,而非仅测试配置)。
- 重新生成App Store Distribution类型的配置文件:在Profiles板块创建新的分发配置文件,类型选择「App Store」,关联正确的App ID和发布证书,下载后导入Xcode替换旧配置。
验证Xcode项目配置
- 在Xcode的「Signing & Capabilities」面板中,确认「User Assigned Device Name」权限已添加,且选中的配置文件是刚生成的App Store分发版本。
- 检查
Info.plist文件,确保已添加NSUserAssignedDeviceNameUsageDescription键,值为清晰准确的权限说明(例如:「用于局域网内识别你的设备名称,方便与Android设备进行文件传输」),该描述会被苹果审核,必须与实际功能匹配。
预验证与提交审核
- 使用新的App Store分发配置文件打包Ad Hoc版本,测试
UIDevice.name是否能正常获取设备名称,确认权限生效。 - 在App Store Connect提交新版本时,在「App Privacy」部分准确填写权限使用情况:对应数据类型选择「Device Information」下的「Device Name」,使用目的选择「App Functionality」并补充说明是文件传输时的设备识别。
- 使用新的App Store分发配置文件打包Ad Hoc版本,测试
内容的提问来源于stack exchange,提问作者黄小黄
相关产品推荐
相关产品推荐

