-3

私が取り組んでいるアプリケーションでは、コードから閉じる必要があります。そのために使っexit(0)ています。

はい、コードからアプリケーションを閉じるべきではないことはわかっています

この方法でアプリケーションを閉じて再度実行すると、奇妙な動作が発生します。アプリケーションは、アプリケーションの新しいインスタンスのようにスプラッシュ画面からも開始されず、アプリケーションがバックグラウンドから戻るなど、最後のビューからも開始されません。

代わりに、私のアプリのランダムで非インタラクティブなビューが一瞬表示され、このスプラッシュ画面の後に実行が開始されます。

ソースが見つからず、この醜いバグを修正する方法が見つからないため、混乱しています。手伝って頂けますか?

4

3 に答える 3

6

これはまさに の問題exit(0)です。奇妙なマルチタスク動作やその他のあらゆる種類の問題が発生します。

コードでアプリケーションを終了することはできません。別の解決策を見つけるお手伝いができるように、プログラムを使用して終了する必要があると思われる理由を説明してください。

于 2012-09-11T08:43:37.033 に答える
5

技術的なQ&AからQA1561iOS
アプリケーションを正常に終了するためのAPIは提供されていません。

exit関数を呼び出さないでください。exitを呼び出すアプリケーションは、正常に終了してホーム画面に戻るのではなく、クラッシュしたように見えます。さらに、exitを呼び出すと、 -applicationWillTerminate:および同様のUIApplicationDelegateメソッドが呼び出されない
ため、データが保存 されない場合があります。開発中またはテスト中にアプリケーションを終了する必要がある場合は、中止機能または アサートマクロをお勧めします。

于 2012-09-11T08:47:53.180 に答える
0

それ以外の

exit(0) 

これを試して:

[[UIApplication sharedApplication] performSelector:@selector(terminateWithSuccess)];
于 2012-09-11T09:30:16.587 に答える