アプリにプッシュ通知を実装しました。ユーザは、彼に新しいメッセージがあるときはいつでもサーバからプッシュ通知を得る。iOS swift 3バックグラウンドからアプリを開くとテーブルビューが再表示される
ユーザーがプッシュ通知をクリックすると、アプリケーションが開きます。私はこれが起こったときに私のアプリがテーブルビューをリロードして、ユーザーに最近のニュースフィードを見せたい。
スウィフト3では可能ですか?
アプリにプッシュ通知を実装しました。ユーザは、彼に新しいメッセージがあるときはいつでもサーバからプッシュ通知を得る。iOS swift 3バックグラウンドからアプリを開くとテーブルビューが再表示される
ユーザーがプッシュ通知をクリックすると、アプリケーションが開きます。私はこれが起こったときに私のアプリがテーブルビューをリロードして、ユーザーに最近のニュースフィードを見せたい。
スウィフト3では可能ですか?
私が理解しているように、最近のニュースフィードViewControllerで開いたアプリの場合は面白いですし、ユーザーがバックグラウンドで閉じることができます。後でプッシュを受け取っている間、ユーザーはそのプッシュをクリックして同じニュースフィードコントローラーを開きます。あなたのUIViewController
NotificationCenter.default.addObserver(self, selector: #selector(yourMethod), name: NSNotification.Name.UIApplicationWillEnterForeground, object: nil)
にUIApplicationWillEnterForeground
通知にサブスクライブし、それが最も簡単な解決策だ退会
deinit {
NotificationCenter.default.removeObserver(self)
}
を忘れてはいけない
func yourMethod() {
// send request to update newsfeed
// then update tableView
// tableView.reloadData()
}
ようyourMethodを実装する必要が
と私は最も単純なケースを説明しました。
アプリが閉じており、受け取ったプッシュに基づいて階層を作成する必要があります(willFinishLaunchingWithOptions
)。
このアプリケーションは別のページで開きます。この場合、ViewController階層を再設定して、必要なViewControllerを表示する必要があります。 この場合、押されたプッシュ通知から必要なViewControllerにいくつかのデータを渡す必要があります。
希望すると助かります!