IOS
 Computer >> コンピューター >  >> プログラミング >> IOS

iOSプログラムがフォアグラウンドにあるかバックグラウンドにあるかを確認するにはどうすればよいですか?


iOS開発者であるため、アプリケーションがフォアグラウンドまたはバックグラウンドにあるかどうかを知ることは重要です。バックグラウンドダウンロード、アプリがフォアグラウンドになった場合のイベントなど、複数のイベントを処理する必要があります。

ここでは、アプリケーションがバックグラウンドにあるかフォアグラウンドにあるかを確認する方法を説明します。

そのために通知センターを使用します

詳細については、アップルのドキュメントを参照してください。

https://developer.apple.com/documentation/foundation/notificationcenter

登録されたオブザーバーへの情報のブロードキャストを可能にする通知ディスパッチメカニズム。同じものにオブザーバーを追加し、電話を受けます。

ステップ1 −Xcodeを開く→新しいプロジェクト→シングルビューアプリケーション→「ForegroundBackground」という名前を付けましょう

ステップ2 − viewDidLoadで、通知センターのオブジェクトを作成します

let notificationCenter = NotificationCenter.default

ステップ3 −背景と前景のオブザーバーを追加する

notificationCenter.addObserver(self, selector: #selector(backgroundCall), name: UIApplication.willResignActiveNotification, object: nil)

notificationCenter.addObserver(self, selector: #selector(foregroundCall), name: UIApplication.didBecomeActiveNotification, object: nil)

ステップ4 −セレクターメソッドを実装する

@objc func foregroundCall() {
   print("App moved to foreground")
}
@objc func backgroundCall() {
   print("App moved to background!")
}

ステップ5 −ブレークポイントを設定し、アプリケーションを実行します。

完全なコード

import UIKit
class ViewController: UIViewController {
   override func viewDidLoad() {
      super.viewDidLoad()
      let notificationCenter = NotificationCenter.default
      notificationCenter.addObserver(self, selector: #selector(backgroundCall), name: UIApplication.willResignActiveNotification, object: nil)
      notificationCenter.addObserver(self, selector: #selector(foregroundCall), name: UIApplication.didBecomeActiveNotification, object: nil)
   }
   @objc func foregroundCall() {
      print("App moved to foreground")
   }
   @objc func backgroundCall() {
      print("App moved to background!")
   }
}

  1. iOS11でFaceTimeが機能しない問題を修正する方法

    Facetimeは、家族や友人とコミュニケーションをとるための優れたAppleのサービスです。特に海外に住んでいる人と。それは彼らとつながり、彼らの生活の中で何が起こっているのかを学ぶための最も安価で簡単な方法です。私たちは皆、iDeviceやMacを使ってお互いに会うのが大好きです。ただし、あなたやあなたの愛する人がiOS 11でFaceTimeが機能しないことを経験することがあります。そして、私の経験から、状況は完全に悪臭を放ちます! FaceTimeが利用できない、またはFaceTimeが機能しない場合は、この記事を確認して、問題を解決するために何ができるかを確認してください。

  2. スケジュールされたタスクをバックグラウンドまたはフォアグラウンドで実行する方法。

    Windows では、タスク スケジューラを使用して、特定のアプリケーションを起動したり、バックグラウンドまたはフォアグラウンドでバッチ ファイルを実行したりする必要がある場合があります。このチュートリアルには、Windows のスケジュールされたタスクをバックグラウンド (非表示) またはフォアグラウンド (表示) で実行するように設定する手順が含まれています。 スケジュールされたタスクをバックグラウンドで実行するように設定する方法 スケジュールされたタスクの実行方法 (非表示または表示) は、スケジュールされたタスクのプロパティの [全般] タブで決定できます。 1. デフォルトでは、