0

デバイスのホームボタンをクリックしたとき。これは私の代議員の一部です:iPhoneでマルチタスクを管理する方法

- (void)applicationWillResignActive:(UIApplication *)application 
{ 
    NSLog(@"resign active"); 
    //[[NSThread mainThread] cancel]; 
} 
- (void)applicationDidEnterBackground:(UIApplication *)application 
{ 
    NSLog(@"enter background"); 
    //[[NSThread mainThread] cancel]; 
} 

- (void)applicationWillEnterForeground:(UIApplication *)application 
{ 
    NSLog(@"enter foreground"); 
    //[[NSThread mainThread] cancel]; 
} 
- (void)applicationWillTerminate:(UIApplication *)application 
{ 
    NSLog(@"terminate"); 
    //[[NSThread mainThread] cancel]; 
} 

私はホームボタンをクリックするとどのメソッドが呼び出されるかを理解するためにNSLogを使用します。これはコンソールで出力されます。だから、

2012-01-20 15:55:55.853 MyApp[5955:11f03] enter background 
2012-01-20 15:55:55.855 MyApp[5955:11f03] terminate 
Program ended with exit code: 0 

私は(2時間のホームボタンをクリックする)バックグラウンドでアプリをクリックすると、再び第1の画像と、その後の私の最初のUIViewControllerを示すlaunchs。

どのように私はそれを解決することができますし、ユーザーがホームボタンをクリックしたときに上部にあったuiviewcontrollerからアプリケーションを再開しますか?

答えて

4

info.plistファイルを確認し、「アプリケーションがバックグラウンドで実行されていません」がチェックされていないことを確認してください。

下の画像は、ユーザーがホームボタンを押したときにアプリケーションが効果的に終了するように、状態が「オン」のオプションを示しています。

info.plist configuration

これはどのようにApple describes that optionです:

UIApplicationExitsOnSuspend

UIApplicationExitsOnSuspend(ブール - iOSの)アプリケーションが終了するのではなく、それが終了したとき、バックグラウンドに移動する必要があることを指定します。 iOS SDK 4.0以降にリンクされたアプリケーションでは、このキーを含めることができ、その値をYESに設定すると、バックグラウンドでの実行やアプリケーションの停止が自動的に禁止されます。このキーの値がYESの場合、アプリケーションはバックグラウンドに移動せずに終了し、メモリからパージされます。このキーが存在しないか、またはNOに設定されている場合、アプリケーションは通常どおりバックグラウンドに移動します。

このキーは、iOS 4.0以降でサポートされています。

+0

私はポストのようなコードを残せば、のNSLogは私が2012年1月20日16言う:11:12.170 TrovaChiavi-Proの[6005:11f03]:11:アクティブ 2012-01-20 16を辞任12.172 TrovaChiavi-Proの[ 6005:11f03]はバックグラウンドで入力してもOKですが、バックグラウンドからアプリを再開すると、開始画像が引き続き表示されます。どうして? – JackTurky

+0

あなたはまだ "終了"ログを取得していますか? – sergio

+0

nonoは、辞任アクティブ - >背景を入力すると言われています – JackTurky

関連する問題