私のアプリが iPhone シミュレーターで実行されると、デリゲート メソッド
- (void)applicationWillTerminate:(UIApplication *)application
iPhoneシミュレーターのホームボタンを初めて押したときにのみ呼び出されます。
ホーム ボタンを押してアプリを再度起動した後、ホーム ボタンを押してもデリゲート メソッドは呼び出されません。
ここで何が起こっているのですか?基本的なことを誤解していますか?
私のアプリが iPhone シミュレーターで実行されると、デリゲート メソッド
- (void)applicationWillTerminate:(UIApplication *)application
iPhoneシミュレーターのホームボタンを初めて押したときにのみ呼び出されます。
ホーム ボタンを押してアプリを再度起動した後、ホーム ボタンを押してもデリゲート メソッドは呼び出されません。
ここで何が起こっているのですか?基本的なことを誤解していますか?
呼び出されているのではないかと思いますが、シミュレーターでホームボタンを押した後、Xcode で現在のセッションを終了したため、混乱していると思います。おそらくメソッドにがありNSLog
ますよね?applicationWillTerminate:
ホームボタンを押すと、NSLog
Xcode の実行コンソールに s が表示されなくなります。開く/Applications/Console.app
と、そこに表示されると思います。
- (void)applicationWillTerminate:(UIApplication *)application
アプリケーションが「終了」したときに呼び出されます。iOS を使用している場合、アプリのマルチタスクを無効にしているか、ユーザーが「マルチタスク対応」デバイスを持っていない限り、ホーム ボタンを押してもアプリは終了しません。
- (void)applicationDidEnterBackground {
ユーザーがホームボタンを押したときに使用されるようになりました。(前に述べたように) アプリのマルチタスクを無効にしているか、ユーザーが「マルチタスクをサポートする」デバイスを持っていない場合を除きます。