Xcode连接真机调试时显示“未信任的开发者”怎么办?

程序员奥翔 阅读 27

用Xcode连接iPhone真机调试时,突然提示“未信任的开发者”,重启设备和Xcode都没用。在设备设置里找不到信任选项,控制台还报错Failed to launch process: failed to get task for pid 1234

之前用同一台电脑和设备没问题,今天换了macOS版本后就出问题了。尝试过删除DerivedData和重置AVD,但没效果。该怎么排查到底是系统信任问题还是证书配置错了?

rm -rf ~/Library/Developer/Xcode/DerivedData
xcrun simctl erase all

用这两个命令清理后还是不行,设备连上电脑时提示变成了“未识别的证书”,难道要重新配置Apple Developer账号?

我来解答 赞 6 收藏
二维码
手机扫码查看
2 条解答
端木皓阳
遇到“未信任的开发者”和“未识别的证书”问题,大概率是Xcode的开发者证书或者设备信任设置出了问题。换了macOS版本后,系统环境变了,可能导致签名工具链或者钥匙串里的证书不匹配了。下面是解决方法:

第一步,确认Apple Developer账号没问题。打开Xcode,点菜单栏的Xcode -> Preferences -> Accounts,找到你的Apple ID,确保账号状态正常。如果账号没问题,点一下Manage Certificates,看看有没有过期或者无效的证书,删掉重新生成。

第二步,检查钥匙串里的证书。打开Mac自带的“钥匙串访问”,搜索“Apple Development”或者“Apple Worldwide”,看有没有带黄色警告标志的证书。有的话直接删掉,然后重新启动Xcode让它自动下载新的证书。

第三步,检查iPhone的信任设置。连上设备,进入设置 -> 通用 -> 设备管理(或者叫描述文件与设备管理),看看有没有一个“未受信任的开发者”的选项。有就点进去手动信任它。

第四步,强制重启一下相关服务。有时候Xcode的后台服务抽风了也会导致这种问题。运行下面这组命令清理一下:
sudo killall -9 usbmuxd
sudo pkill -9 MobileDeviceUpdater


第五步,重新配置一次Xcode的签名环境。代码给你:
rm -rf ~/Library/Developer/Xcode/DerivedData
rm -rf ~/Library/MobileDevice/Provisioning Profiles
xcrun --reset

然后再重启电脑和设备。

最后一步,如果还是不行,可能是新macOS版本的问题。去苹果开发者论坛搜一下你用的macOS版本有没有类似问题,可能需要更新Xcode到最新版或者等苹果修复。

一般来说,按上面这几步走一遍应该能解决。要是还不行,那可能真是系统层面的问题了,建议回退到之前的macOS版本,毕竟开发环境稳定最重要。
点赞 2
2026-02-16 20:03
冰可~
冰可~ Lv1
这个问题根本原因是 macOS 系统升级后,Xcode 的代码签名机制和钥匙串中的开发者证书信任链被重置了。你看到的“未信任的开发者”不是 iOS 设备本身的问题,而是 macOS 钥匙串里对应的开发证书状态变了,导致 Xcode 无法正确签名应用,进而设备拒绝运行。

重点在于:系统升级会重置钥匙串访问权限,尤其是当你没有完整备份登录钥匙串时,原有的开发者证书(如 Apple Development: xxx)会被标记为不受信或丢失私钥关联。

下面是完整的排查和修复步骤,顺序不能乱:

第一步,确认钥匙串中开发者证书是否受信

打开“钥匙串访问”App,左侧选择“登录”钥匙串和“系统”钥匙串,搜索关键词 “Apple Development” 或你的邮箱。找到类似这样的条目:

Apple Development: yourname@example.com (XXXXXXXXXX)

双击打开它,展开“信任”部分,确保“代码签名”这一项是“始终信任”。如果不是,就改成“使用系统默认值”或者直接选“始终信任”。

有时候系统升级后这个设置会自动变成“提示”,等于不信任,这就是签名失败的源头。

第二步,删除旧证书并重新从 Apple 服务器拉取

Xcode 不会自动更新本地证书的状态。即使你在账号里登出再登录,也可能残留错误配置。

先在 Xcode 顶部菜单进入 Xcode → Settings → Accounts,选择你的 Apple ID,点击右下角减号移除账号。

然后彻底退出 Xcode。

接着清理钥匙串里所有可疑的开发证书。回到“钥匙串访问”,把刚才搜到的 Apple Development 和 Apple Worldwide Developer Relations Certification Authority 相关证书都删掉。别怕,这些都可以重新下载。

第三步,重新添加账号并触发证书重建

重新打开 Xcode,进 Settings → Accounts,加回你的 Apple ID,推荐用双因素认证登录。

这时候 Xcode 会自动尝试下载证书和移动配置文件(provisioning profile)。但注意:它不一定立刻生成适合你当前设备的调试证书。

你需要手动触发一次签名构建。

连接你的 iPhone,选择目标设备为真机,在项目设置的 Signing & Capabilities 选项卡里,确认 Team 已选中,并且 Bundle Identifier 是唯一的(比如加个数字后缀临时用)。

然后 clean 一下工程:

Command + Shift + K

再 build 一次(Command + B),不要直接 run。这一步是为了让 Xcode 主动尝试签名 app,从而触发证书申请流程。

如果证书缺失,Xcode 会弹窗提示“Need to install a development certificate”,点允许,它会自动帮你生成 CSR 并提交到苹果服务器,几分钟内完成。

第四步,检查设备端的信任设置

你现在应该能在 iPhone 设置 → 通用 → VPN与设备管理 或者 设置 → 通用 → 描述文件与设备管理 里看到一个企业级描述文件,名字是你的 Apple ID 邮箱。

点进去,如果有“信任”按钮,必须手动点一遍。这是很多开发者忽略的关键点:就算电脑端签好了,设备不主动信任也不行。

第五步,处理“failed to get task for pid”错误

这个报错其实是结果,不是原因。它的意思是调试器无法 attach 到进程,通常是因为应用没正常启动——而启动失败正是因为签名验证没过。

所以只要你前面四步做完,这错误自然消失。

但如果你还遇到这个问题,可以检查以下两点:

1. 确保设备开启了开发者模式(iOS 16+ 要求)

进入 iPhone 设置 → 隐私与安全性 → 开发者模式,打开开关。首次开启需要重启,并且要连电脑确认信任。

这个开关在系统升级后会被关闭,特别是刷机或重装 macOS 后。

2. 检查 Xcode 是否有完整权限

macOS 升级后可能重置辅助功能权限。去系统设置 → 隐私与安全性 → 辅助功能,确认 Xcode 在列表里并且勾选了。如果没有,手动加进去。

第六步,终极清理命令(比你之前用的更彻底)

你用了 rm -rf ~/Library/Developer/Xcode/DerivedData 和 xcrun simctl erase all,但这只清了模拟器和缓存,没动签名核心数据。

加上这两条:

# 清理自动创建的 provisioning profiles
rm -rf ~/Library/MobileDevice/Provisioning Profiles/*

# 清理 Xcode 自动维护的证书缓存(非钥匙串)
rm -rf ~/Library/Preferences/com.apple.dt.Xcode.plist
rm -rf ~/Library/Preferences/com.apple.dtaccount.plist


注意:删 plist 会导致 Xcode 下次启动重新初始化偏好设置,但不会丢项目配置。

删完之后重启 Mac,再开 Xcode,重新登录账号,走一遍上面的构建流程。

总结一下整个逻辑链:

macOS 升级 → 钥匙串权限重置 → 开发证书不再被信任 → Xcode 签名失败 → iOS 设备拒绝安装 → 控制台显示 task attach 失败

所以不是设备问题,也不是账号废了,就是本地信任链断了。你不需要重新买开发者账号,只需要重建这套信任关系。

最后提醒一句:别图快用第三方工具“一键修复证书”,那些脚本经常误删必要证书,反而更麻烦。老老实实走一遍官方流程最稳。
点赞 3
2026-02-12 18:02