Swiftui 重新启动应用程序时如何使用方法?
我目前正在使用SwiftUI开发一个应用程序 我想在第4个进程中重新启动应用程序时使用一种方法,如下所示:Swiftui 重新启动应用程序时如何使用方法?,swiftui,swift5,Swiftui,Swift5,我目前正在使用SwiftUI开发一个应用程序 我想在第4个进程中重新启动应用程序时使用一种方法,如下所示: 构建并运行此项目。然后,控制台在屏幕上显示场景
场景
scenewillresignative
sceneDidEnterBackground
消息:由于信号9而终止
代码如下: 斯威夫特美术馆
import UIKit
import SwiftUI
class SceneDelegate: UIResponder, UIWindowSceneDelegate {
var window: UIWindow?
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
let contentView = ContentView()
if let windowScene = scene as? UIWindowScene {
let window = UIWindow(windowScene: windowScene)
window.rootViewController = UIHostingController(rootView: contentView)
self.window = window
window.makeKeyAndVisible()
}
print("scene")
}
func sceneDidDisconnect(_ scene: UIScene) {
print("sceneDidDisconnect")
}
func sceneDidBecomeActive(_ scene: UIScene) {
print("sceneDidBecomeActive")
}
func sceneWillResignActive(_ scene: UIScene) {
print("sceneWillResignActive")
}
func sceneWillEnterForeground(_ scene: UIScene) {
print("sceneWillEnterForeground")
}
func sceneDidEnterBackground(_ scene: UIScene) {
print("sceneDidEnterBackground")
}
}
ContentView.swift
import SwiftUI
struct ContentView: View {
var body: some View {
VStack {
Text("Hello, World!")
}.onAppear(){
print("onAppear")
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
Xcode:11.7版
Swift:Swift 5好吧,一旦你终止应用程序,调试器也会与应用程序断开连接。因此,无法在控制台中获取更多消息。您必须从Xcode重新启动应用程序,以便启动带有附加调试器的新实例。当你这样做的时候,你回到了第一步 你可以在应用程序进入后台时存储一个时间戳。然后,如果您终止应用程序并重新启动它,您可以检查
应用程序(application:UIApplication,didFinishLaunchingWithOptions launchOptions:)
方法中经过了多少时间
如果最多过了x秒,您可以断定有人终止了应用程序,然后决定重新启动它。如果超过x秒或者没有存储时间戳,这意味着这只是一个常规的应用程序启动