我的Delphi10.3.2应用程序没有通过苹果的公证。
我已经得到了另一个不同的应用程序,以成功公证。
如何查看包含失败公证结果的日志文件?
( Xcode的说明没有帮助,因为Xcode似乎认为这些日志与Xcode产品档案相关联,这是一个Delphi项目。)
打开PAServer中的详细设置,显示最后一个使用altool请求--公证-info的命令。这是其类型的唯一命令。苹果公司的电子邮件告诉我公证失败的消息在命令下达后不久就到达了。
当我的另一个项目成功公证时,-公证-info命令在成功之前在PAServer中出现了数十次。
我回去试着公证这个一直成功的项目。我收到苹果的电子邮件说它是公证的,但是德尔菲(不是PAServer)显示了这个错误:
PAClient错误: E5896 2019-07-24 11:16:23.235 altool2270: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忽略了这一点。删除冒犯的可执行文件允许应用程序进行公证。
我仍然找不到从公证过程中查看日志的方法。
发布于 2020-02-05 06:39:02
必须通过在详细模式下运行命令行ALTOOL来查看日志。以下是我所做的:
“/usr/bin/usr”-c -k -保持父母的-c-k "/usr/bin/xcrun“altool -t osx -公证-app-主要-bundle-id za.co.eee -u eee@eee.co.za -p veet-teee-geee-xeee -f -f
请注意命令行中添加的--verbose:
"/usr/bin/xcrun“工具--详细--公证-info 2 ceeeb2c-eeee-eeee-bce8-16fae417eee2 -u "eee@eee.co.za”-p "eeet-eeen-eeh-xdha“
错误消息以JSON格式返回。查找需要复制并粘贴到浏览器中的URL。粘贴完URL后,将显示另一条JSON格式的消息。在其中,您会发现导致应用程序未被通知的问题:
"message":“可执行文件没有启用强化运行时。”
若要解决此问题,必须在Delphi中启用以下设置:
项目选项->应用程序->权限列表
公证程序现在应该起作用。
https://stackoverflow.com/questions/57172342
复制相似问题