亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

檢測iOS應用進入后臺

檢測iOS應用進入后臺

拉丁的傳說 2019-12-04 12:42:03
我正在為Swift編寫的iOS游戲。我試圖找到一種方法來檢測應用程序何時進入后臺模式或由于其他原因而中斷,例如電話,但找不到任何東西。我該怎么做?
查看完整描述

3 回答

?
守候你守候我

TA貢獻1802條經驗 獲得超10個贊

編輯/更新:Xcode 10?Swift 4.2


您可以將觀察者添加到視圖控制器中 UIApplication.willResignActiveNotification


NotificationCenter.default.addObserver(self, selector: #selector(willResignActive), name: UIApplication.willResignActiveNotification, object: nil)

并向您的視圖控制器添加選擇器方法,該方法將在您的應用收到該通知時執行:


@objc func willResignActive(_ notification: Notification) {

    // code to execute

}


查看完整回答
反對 回復 2019-12-04
?
達令說

TA貢獻1821條經驗 獲得超6個贊

在Swift 4和iOS 12中:要觀察應用程序進入后臺事件,請將此代碼添加到您的viewDidLoad()方法中。


    let notificationCenter = NotificationCenter.default

    notificationCenter.addObserver(self, selector: #selector(appMovedToBackground), name: UIApplication.didEnterBackgroundNotification, object: nil)


    @objc func appMovedToBackground() {

        // do whatever event you want

    }

您必須使用UIApplication.didEnterBackgroundNotification。如果要觀察應用程序是否進入前臺事件,請使用UIApplication.willEnterForegroundNotification


因此,完整的代碼將是:


override func viewDidLoad() {

    super.viewDidLoad()


    let notificationCenter = NotificationCenter.default

    notificationCenter.addObserver(self, selector: #selector(appMovedToBackground), name: UIApplication.didEnterBackgroundNotification, object: nil)


    notificationCenter.addObserver(self, selector: #selector(appCameToForeground), name: UIApplication.willEnterForegroundNotification, object: nil)


    // Do any additional setup after loading the view.

}

 @objc func appMovedToBackground() {

    print("app enters background")

}


@objc func appCameToForeground() {

    print("app enters foreground")

}


查看完整回答
反對 回復 2019-12-04
  • 3 回答
  • 0 關注
  • 983 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號