- ベストアンサー
iPhoneプログラミングで
iPhoneプログラミングで、プログラムソース内に終了処理を書いてはいけないというサイトを見つけたのですが、本当にできないのでしょうか。 とりあえず、アップルにも質問しましたが、私の英語できちんと伝わるか自信がないため、こちらでも質問させていただきます。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#97363
回答No.1
参考URL先での話題ですよね? 恐らく、ホームボタンを押すイベント以外ではプロセスを終了させるな、ということではないでしょうか。その場合はフレームワーク側で処理されるためプログラマ側は実装する必要はありません。プロセスの終了は完全にユーザーに委ねるというAppleのデザインでしょう。MacだとNSApplicationにterminate:を投げることでコード内からプロセスを終了させる (特定のウィンドウが閉じられたら終了とか) ことも可能ですが、UIApplicationには類似のメソッド見あたらないですね。リンク先に出ていたexit()を使う手には感心しません。自分のコード外で終了時の後始末を行っている可能性を意識するべきです。未公開メソッドも然り。 ホームボタンを押した際、ストアにデータを保存するなどの後処理には UIApplicationのデリゲートメソッド applicationWillTerminate: 辺りでフックしてやればいいと思います。