コンテンツへスキップ →

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

例えばアプリが終了する直前に「データを保存したい」など、特定の処理を呼び出したい場合は通知センター(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

スキルアップにMENTA

MENTAはいろんなプロに相談できるNo1メンターサービスです。

僕自身もプロダクトの壁打ち・相談にのっています。個人開発でもコードレビュー、セキュリティ面のチェック、デザイン、広告、コンテンツマーケ、SNS集客について相談する、など使えます。

YouTubeでも発信中!

PROFILE

入江 慎吾
あらゆるスキルが学べるパーソナルメンターサービスMENTAの代表/個人開発が好きでこれまでに30個ほどのWEBサービスやアプリを作ってきました/福岡のWEB制作会社勤務→フリーランスエンジニア→法人立ち上げ→M&A億単位の売却を経験。 (詳しいプロフィール)

カテゴリー: 開発奮闘記