繁体   English   中英

Xamarin 应用程序在 iOS 12 上启动屏幕后崩溃

[英]Xamarin app crashes after launch screen on iOS 12

所以我使用 Xamarin.Forms v3.4.0 制作了一个应用程序,在我的 iPhone(SE,iOS 13.3)上测试了一个 android 设备,它运行得很好。 作为测试,我在旧设备(iPhone 6、iOS 12.4)上运行它,它在蓝色启动屏幕后立即崩溃。

问题是它甚至没有启动调试器。 崩溃得太早以至于调试器甚至还没有启动,所以我不知道如何确定导致崩溃的原因。 尝试在 Main.cs 和 AppDelegate.cs 的第一行放置断点,并且调试器并没有停在那里。

在那之后,我认为它可能与设备的处理器有关,所以我为带有 iOS 12.4(相同设备,旧操作系统)的 iPhone SE 设置了一个模拟器,但它崩溃了。 所以是的,它必须与操作系统版本有关。

我的另一个想法是,这可能与黑暗模式有关(对不起,我只是在提出想法)。 我使用本指南实现了暗模式

我不知道从哪里开始,任何帮助都表示赞赏。

编辑:
刚刚将 Xamarin.Forms 更新到 4.4.x,我仍然遇到完全相同的问题。

问题实际上出在我用来处理暗模式的自定义页面渲染器中。 显然, TraitCollectionDidChange()previousTraitCollection参数在 iOS 12 中为 null。

所以它只是一个NullReferenceException很容易修复:

if (previousTraitCollection == null)
    return;

我不知道为什么调试器没有及时启动以识别错误,但幸运的是,我通过将Linker Behavior修改为Link Framework SDKs Only来发现它

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM