使用xcrun进行Apple公证时遇JSON请求处理错误(1268)求助
解决应用公证一直显示"Notarization In Progress"及错误1268的问题
可能原因及对应解决步骤
1. 替换过时的altool为notarytool
Apple已正式弃用altool,转而推荐使用notarytool,旧版本altool可能与当前公证服务存在兼容性问题,导致请求处理失败(错误1268)。
切换到notarytool的基础命令:
- 提交公证(
--wait参数可直接等待结果返回):
xcrun notarytool submit ./myapp.pkg --keychain-profile "Developer-notarytool" --wait
- 查询公证历史:
xcrun notarytool history --keychain-profile "Developer-notarytool"
注:先执行xcrun notarytool store-credentials将账户信息存入钥匙串,生成对应的profile名称。
2. 验证钥匙串密码配置
确保钥匙串中的密码项符合要求:
- 确认使用的是App Specific Password(而非Apple ID普通密码),登录Apple ID管理页面生成专用密码后更新钥匙串项。
- 检查钥匙串中
Developer-altool(或notarytool的profile)的权限,确保xcrun有权访问该密码项。
3. 检查待公证包的合法性
包本身的问题可能导致公证流程卡住:
- 验证pkg包的签名完整性:
pkgutil --check-signature ./myapp.pkg
- 检查包内文件是否存在未签名的二进制、不符合Apple安全要求的权限(比如可执行文件设置了SUID/SGID位)。
- 重新打包,确保打包过程未损坏文件结构。
4. 排查网络环境问题
网络限制可能导致与Apple公证服务器的连接中断:
- 关闭代理、VPN或防火墙,尝试直接连接网络提交公证。
- 测试能否正常访问Apple公证服务相关域名,确保网络连通性。
5. 确认开发者账户状态
登录Apple开发者后台,检查账户是否处于正常状态:
- 确认账户没有欠费、过期,或存在其他限制。
- 查看账户的公证服务是否有异常记录。
内容的提问来源于stack exchange,提问作者GuiFalourd
相关产品推荐
相关产品推荐

