我的 Delphi 10.3.2 应用程序未通过 Apple 的公证。
我已经能够让另一个不同的应用程序成功公证。
如何查看包含公证失败结果的日志文件?
(Xcode 的说明没有帮助,因为 Xcode 似乎认为日志与 Xcode 产品档案相关联,这是一个 Delphi 项目。)
在 PAServer 中打开详细设置会显示使用 altool 请求 --notarization-info 的最后一个命令。这是其类型中唯一的命令。在此命令后不久,来自 Apple 的电子邮件通知我公证失败。
当我的其他项目公证成功时, --notarization-info 命令在PAServer中出现了几十次才成功。
我回去尝试对一直成功的项目进行公证。我收到来自 Apple 的电子邮件,说它已经过公证,但 Delphi(不是 PAServer)显示此错误:
[PAClient 错误] 错误:E5896 2019-07-24 11:16:23.235 altool[2270:146899] *** 错误:Apple 服务操作失败。找不到 RequestUUID。
PAServer 的输出:
> command_line: "/usr/bin/plutil" -convert binary1 "/Users/michaelleahy/PAServer/scratch-dir/Mikes SSD Dell-Mikes Dell SSD/ChessOpeningsWizardExpressBuild107.app/Contents/Info.plist"
> command_line: "/usr/bin/codesign" -o runtime --timestamp --entitlements "/Users/michaelleahy/PAServer/scratch-dir/Mikes SSD Dell-Mikes Dell SSD/ChessOpeningsWizardExpressBuild107.entitlements" --deep -s "Developer ID Application: Bookup" -f "/Users/michaelleahy/PAServer/scratch-dir/Mikes SSD Dell-Mikes Dell SSD/ChessOpeningsWizardExpressBuild107.app"
> command_line: "/usr/bin/ditto" -c -k --keepParent "/Users/michaelleahy/PAServer/scratch-dir/Mikes SSD Dell-Mikes Dell SSD/ChessOpeningsWizardExpressBuild107.app" "/Users/michaelleahy/PAServer/scratch-dir/Mikes SSD Dell-Mikes Dell SSD/ChessOpeningsWizardExpressBuild107.app.zip"
> command_line: "/usr/bin/xcrun" altool -t osx --notarize-app --primary-bundle-id com.bookup.chessopeningswizardexpress -u appleid@mysite.com -p lgsp-xxxx-yyyy-xxxx -f "/Users/michaelleahy/PAServer/scratch-dir/Mikes SSD Dell-Mikes Dell SSD/ChessOpeningsWizardExpressBuild107.app.zip"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
> command_line: "/usr/bin/xcrun" altool --notarization-info 8a88a10f-3868-4958-8bca-10eea92a305b -u "appleid@mysite.com" -p "lgsp-xxxx-yyyy-xxxx"
从那以后我就猜到了这个问题。显然,未签名的可执行文件位于应用程序包中。在这种情况下,代码签名可能会失败,而 Delphi 忽略了这一点。删除有问题的可执行文件允许对应用程序进行公证。
我仍然无法查看公证过程中的日志。