Delphi FMX Mac应用程序在使用Indy配置为“应用程序商店”时无法连接到互联网

rkttyhzu  于 2023-01-05  发布在  Mac
关注(0)|答案(1)|浏览(168)

我开发了一个苹果应用程序,我正在Mac Mini上测试。当我将Delphi配置设置为"正常",然后在Mac上构建和运行应用程序时,程序启动并连接到互联网,没有任何问题。一旦程序在Mac上构建和运行,我可以进入Mac上的scratch-dir文件夹(由Delphi的PSServer创建),运行"应用程序"文件,也没有任何问题。
然而,当我将配置更改为"应用程序商店",重建,然后使用部署按钮在Mac上创建"应用程序"和"pkg"文件时,应用程序在尝试访问互联网时将不再工作。任何互联网访问尝试都会失败。无论是scratch-dir文件夹中重建的"应用程序"文件,还是我安装"pkg"文件并尝试运行程序时,都会发生这种情况。
Note: this app uses the Indy components TIdFTP and TIdSMTP to access an FTP server and to send emails. Both of these work with the "Normal" app, and both fail with the "Application Store" app. The fact that both components fail with the "Application Store" build probably indicates that this is not an Indy problem. But just in case, for the FTP connection, I just get an "Unable to connect to FTP" message that is from my program, I have not added additional error handling to see what fails with the FTP. For the email failure, Indy raises an "Error resolving Address smtp.office365.com: nodename nor servname provided, or not known (8)" exception.
关于如何确定"应用程序商店"构建不起作用的原因,有什么建议吗?
附加信息2023 - 01 - 03.只是简单地从正常配置更改为存储应用程序并进行部署就会导致这个问题。我检查了Delphi在构建过程中发出的消息,正常和存储构建消息匹配。对于部署,消息的唯一区别是Normal配置执行快速编译(未构建),应用商店配置会将"Apple分发"和"第三方Mac开发者安装程序"信息添加到部署中。

t0ybt7op

t0ybt7op1#

正如雷米Lebeau和Dave Notage所提到的,应用程序商店编译的问题是没有在Mac的权利列表中选中Outgoing network socket for connecting。选中该选项允许应用程序商店编译访问Internet。
注意:不确定为什么在设置为正常配置时编译项目不需要Outgoing network socket for connecting,但应用程序商店编译需要。使事情混乱,并导致大量的挠头。

相关问题