应用程序试图在目标 <UIApplicationRotationFollowingController: 0x100c75280> 上呈现一个 nil 模态视图控制器

Posted

技术标签:

【中文标题】应用程序试图在目标 <UIApplicationRotationFollowingController: 0x100c75280> 上呈现一个 nil 模态视图控制器【英文标题】:Application tried to present a nil modal view controller on target <UIApplicationRotationFollowingController: 0x100c75280> 【发布时间】:2017-10-10 14:11:27 【问题描述】:

我正在处理企业 ios 应用程序的一些崩溃日志。我的用户经常遇到以下崩溃。

主要 *** 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“应用程序试图呈现一个 目标上的 nil 模态视图控制器 UIApplicationRotationFollowingController:0x100c75280。 AppDelegate.swift,第 13 行

在没有首先检查设备是否配置了电子邮件的情况下呈现此 MFMailComposeViewController 时,有很多关于这种情况的报告。这在我的应用程序中不是

有谁知道在什么情况下会发生这种情况?

【问题讨论】:

我们在 CrashAnalytics 中得到 Application tried to present modally an active controller &lt;UIApplicationRotationFollowingController: 0x101621120&gt;. -[EventsViewController pushDetailViewController] 【参考方案1】:

很难在没有看到您的代码的情况下进行调试...您可以在 Xcode 中使用异常断点重新创建崩溃以查看发生了什么吗?

否则我只能建议查看 AppDelegate 的第 13 行,并尝试找出为什么您尝试呈现的任何 ViewController 由于某种原因没有被初始化?

【讨论】:

我们唯一一次看到此崩溃是在我们的崩溃分析报告时。我们无法在 Xcode 中重现。这个应用程序有数万行代码,并且由于崩溃分析报告它发生在 main 中,它可能起源于任何地方,包括我们应用程序中的许多框架。 AppDelegate 的第 13 行是 AppDelegate 类头,所以这也是有限的使用。 嗯,这很棘手。如果您没有在应用程序中显示太多模态,您可以尝试查看您呈现的模态(包括 UIAlertControllers),看看您是否认为在某些情况下它们可能为零。否则,如果您使用任何广告库,我发现它们通常是罪魁祸首(例如,试图显示全屏插页式广告)?

以上是关于应用程序试图在目标 <UIApplicationRotationFollowingController: 0x100c75280> 上呈现一个 nil 模态视图控制器的主要内容,如果未能解决你的问题,请参考以下文章

UIApplicationDidChangeStatusBarOrientationNotification 已弃用,还有其他选择吗?

_UIApplicationHandleEventFromQueueEvent 中出现意外的 nil 窗口

UINavigationController - 应用程序试图在目标上推送一个 nil 视图控制器,我错过了啥?

应用程序试图在目标上呈现一个 nil 模态视图控制器

ios:应用程序试图在目标上呈现一个 nil 模态视图控制器

** 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“应用程序试图在目标上呈现一个 nil 模态视图控制器