小编Jim*_*Jim的帖子

Maui ios 中的调试版本和发布版本之间的差异

我使用 Maui 预览版(现在是候选版本)和 blazorwebview 来构建一个相当简单的应用程序,该应用程序连接到 Web 服务并同步数据。

Windows 和 Android 版本飞逝而过。iOS 版本的推出经历了漫长的过程。升级我的 Mac(以及一长串解决方法)后,我终于能够通过 testflight 部署一些构建。

在 iOS 版本模拟器中工作正常,但在真实设备上,它在解析 JSON 时抛出一个奇怪的错误(在进行反序列化时 - 我使用的是 newtonsoft)“MyObject 上的 MyProp 的错误设置值”(名称已更改)。

经过一番努力后,我在设备上调试了它并且运行良好。所以这让我得出结论,这一定是一个发布优化问题(它没有加载我的所有类,因此反序列化失败)。

但是,无论我在 csproj 文件中更改什么链接器设置(full、sdkonly 等),发布版本都不起作用。我可以看到包大小随着这些变化而上下变化,所以它们显然正在发挥作用。我现在已经通过 testflight 部署了调试版本,并且工作正常。

在我看来,如果链接器设置相同,那么调试与发布版本应该相同,但显然存在差异。

包的发布版本似乎总是调试大小的两倍(使用不同的链接器设置复制,即 sdkonly 发布是双 sdkonly 调试),因此看起来它在发布包中存储了两个构建?

另外,当在发布模式下构建时,构建大约需要 15 分钟,而调试大约需要 3 分钟。所以肯定存在我所遗漏的显着差异。谁能解释一下吗?

c# ios xamarin maui maui-blazor

5
推荐指数
0
解决办法
621
查看次数

标签 统计

c# ×1

ios ×1

maui ×1

maui-blazor ×1

xamarin ×1