繁体   English   中英

iOS-我的应用第二次启动会在后台自动运行

[英]IOS - second launch of my app going auto in background

当我从Xcode启动我的应用程序时,该应用程序可以正常运行,但是如果我关闭然后再次打开该应用程序,它会自动进入后台而不受控制。 如何解决此错误?

通过Xcode运行应用程序时,有一些崩溃类型不会发生。

例如:如果应用启动时间太长,该应用将崩溃。 基本上这不是崩溃,但是应用程序需要快速启动,而操作系统不会延迟。

因此,您需要确保在应用启动期间不要对主线程进行任何繁重的操作,尤其是对AppDelegate以下方法进行操作时

func application(_ application: UIApplication, willFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {

// Avoid heavy loads on main thread here
    return true
}

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {

// Avoid heavy loads on main thread here
    return true
}

几年前,当我尝试向我的NSObject类添加目标c结构而不分配结构变量的内存时,我也遇到了崩溃。 但是当我通过Xcode运行我的应用程序时,此崩溃无法重现,仅当我在没有Xcode的情况下启动应用程序时才发生。 因此,我将该结构变量作为指针进行了内存分配,就像(BoothStructure*)malloc(sizeof(BoothStructure) * count) ,此后没有崩溃。

因此,请同时使用崩溃日志分析崩溃,并检查它是否符合上述任何一种情况。

要检查开发版本的崩溃日志:打开Xcode->连接已/已崩溃应用程序的iOS设备->窗口->设备和模拟器->查看设备日志

要检查生产版本的崩溃日志(您应该在用于发布应用的Xcode中添加您的开发人员帐户):打开Xcode->窗口->管理器->从应用列表中选择您的应用->选择细分中的崩溃标签顶部的控制器->选择构建版本。

暂无
暂无

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

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