35

重複の可能性:
iOS 4.0 でアプリケーションを終了する

テキストと「OK」ボタンを表示する AlertView があります。[OK] ボタンをクリックしたときにアプリケーションを終了する方法はありますか?

4

2 に答える 2

84

exit(X)、ここで X は数値です (ドキュメントによると) が機能するはずです。ただし、Apple では推奨されておらず、AppStore では受け入れられません。なんで?これらのガイドラインのため (私のアプリの 1 つが拒否されました):

お客様のアプリには、アプリを終了するための UI コントロールが含まれていることがわかりました。これは、App Store レビュー ガイドラインで要求されている iOS ヒューマン インターフェイス ガイドラインに準拠していません。

添付のスクリーンショットを参照してください。

iOS ヒューマン インターフェイス ガイドラインでは、

「常に停止する準備をしておいてください」ユーザーがホームボタンを押して別のアプリケーションを開いたり、電話などのデバイス機能を使用したりすると、iOS アプリケーションが停止します。特に、ユーザーはアプリケーションの閉じるボタンをタップしたり、メニューから [終了] を選択したりしません。優れた停止エクスペリエンスを提供するために、iOS アプリケーションは次のことを行う必要があります。

終了または終了通知はいつでも到着する可能性があるため、ユーザー データをできるだけ早く適切な頻度で保存します。

停止時に現在の状態を可能な限り詳細なレベルで保存して、アプリケーションを再起動したときにコンテキストが失われないようにします。たとえば、アプリがスクロール データを表示する場合、現在のスクロール位置を保存します。」

> アプリを終了するためのメカニズムを削除することが適切です。

さらに、その機能を隠そうとすると、ユーザーはクラッシュと認識してしまいます。

于 2013-01-15T10:40:19.430 に答える
48

exit メソッドを使用して iOS アプリを終了できます。

exit(0);

同じ警告メッセージを言って、彼にやめるように頼むべきです

別の方法は、[[NSThread mainThread] exit]

ただし、この方法を行うべきではありません

Apple によると、アプリは勝手に終了するべきではありません。ユーザーはホーム ボタンを押していないため、ホーム画面に戻ると、アプリがクラッシュしたような印象をユーザーに与えます。これは紛らわしい非標準の動作であり、回避する必要があります。

于 2013-01-15T10:38:37.217 に答える