Skip to content →

アプリ終了時にメソッドを呼び出すには

例えばアプリが終了する直前に「データを保存したい」など、特定の処理を呼び出したい場合は通知センター(NSNotificationCenter)を使うと便利です。事前に通知登録しておくことで、実際にその処理が行われた時に通知してくれるというものです。

ViewDidLoadに事前登録しておきます。

//アプリがバックグラウンドに移行した時によばれる
[[NSNotificationCenterdefaultCenter] addObserver:self
                                             selector:@selector(動かしたいメソッド)
                                             name:UIApplicationWillTerminateNotification
                                             object:nil];

これだけで、アプリ終了直前にメソッドを呼び出せます。

アプリ終了直前以外にも、いろんなパターンでの通知があります。

UIApplicationDidBecomeActiveNotificationアプリケーションがアクティブになった時
UIApplicationDidChangeStatusBarFrameNotificationステータスバーのサイズ変更が発生した時に通知。
UIApplicationDidChangeStatusBarOrientationNotificationデバイスの向きが変わった後に通知
UIApplicationDidEnterBackgroundNotificationアプリケーションがバックグラウンドに入る時に通知
UIApplicationDidFinishLaunchingNotificationアプリケーションが起動した直後に通知
UIApplicationDidReceiveMemoryWarningNotificationメモリ不足の警告発生時に通知
UIApplicationSignificantTimeChangeNotification時間に大きな変更が有った場合に通知。日付が変わった時や夏時間に変更など
UIApplicationWillChangeStatusBarOrientationNotificationデバイスの向きが変わる直前に通知
UIApplicationWillChangeStatusBarFrameNotificationステータスバーのサイズ変更される直前に通知
UIApplicationWillEnterForegroundNotificationアプリケーションがアクティブになる直前に通知
UIApplicationWillResignActiveNotificationアプリケーションがアクティブで無くなる直前に通知。
UIApplicationWillTerminateNotificationアプリケーションが終了される直前に通知

[sc name=”ios”][sc name=”engeneer”]

SHARE

PROFILE

入江 慎吾
イリテク株式会社代表取締役 / メンターマッチングサービスMENTAを運営(月間流通額700万突破)/ 累計20個以上のWEBサービスやアプリを開発 / CAMPFIREとコミュニティツールVoyageを共同開発中 / 「自分のサービスで生きていく」をコンセプトに個人開発オンラインサロン「入江開発室」を運営(詳しいプロフィール)

SPONSER

Published in 開発奮闘記