【发布时间】:2019-08-08 12:28:28
【问题描述】:
问题是上传请求后获取公证状态时
就像这样,我有一个较旧的内核扩展,需要最新的 mac 更新公证,我正在尝试以自动方式(命令行)完成此操作。
我想做的第一件事是看看我是否可以上传任何内容并恢复任何状态。
所以在 xcode 中构建了 kext 之后,我使用同上创建了需要发送到苹果的存档:
cd <builddir> && ditto -c -k --keepParent "MyApp.kext" "MyApp.kext.zip"
完成后我上传它:
xcrun altool --notarize-app --primary-bundle-ip "com.myapp.." --username "user@example.com" --password "mypassword" -asc-provider "MyProvider" --file MyApp.kext.zip
这将返回我需要的请求 ID
所以上述步骤有效,下一步是给我带来问题,获取请求的状态,尝试将特定请求都获取为全部
xcrun altool --notarization-info <id> -u "user@example.com" -p "mypassword" -asc-provider "MyProvider"
或
xcrun altool --notarization-history 0 -u "user@example.com" -p "mypassword" -asc-provider "MyProvider"
这两个命令都给了我:
*** Error: Connection failed! Error Message - unsupported URL
*** Error: Apple Services operation failed. unsupported URL
在谷歌上,我没有找到任何“不支持的 URL”错误
有人有这方面的经验吗?
【问题讨论】:
-
我认为我以前见过这个错误,但我忘记了究竟是什么原因造成的,但肯定是我提交命令的方式有错误。在您的情况下,看起来可能是
--notarization-info实际上并不需要--asc-provider选项。试着把它关掉。另请注意,它是带有 2 个连字符的--asc-provider,而不是-asc-provider。 (我不知道为什么你的--notarize-app有效,因为它也应该有 2 个连字符。) -
我在这里输入错误的命令,需要 asc-provider 因为我在多个团队中,没有它会出错
-
我的意思是,如果您查看
xcrun altool --help的输出,--notarization-info子命令确实不需要需要--asc-provider。 (UUID 是明确的) -
你是正确的并且有效,不仅如此,我确实不仅在这里输入错误,而且在命令行上(愚蠢的错误),现在一切正常。感谢您的关注
标签: xcode macos kernel-extension xcrun notarize