2013-01-15 18 views
12

可能性の重複:
Exit application in iOS 4.0終了するアプリケーションのとき、クリックボタン - iOSの

私はいくつかのテキストおよび "OK" ボタンを表示するAlertViewを持っています。

ユーザーが[OK]ボタンを押してからアプリを終了する必要がある場合。

クリックするとアプリケーションを終了する方法はありますか?

+1

アプリケーションを終了しないでください。そうしないと、appleはアプリケーションを拒否します。 –

+0

@MidhunMPコードに 'preconditionFailure'sがありませんか?彼らは_released_スキーム/アプリをクラッシュさせない?それはAppleがそれ自体を置いた言葉ではないか?だからなぜリンゴはあなたのアプリを拒否するだろうか?私は「OK」ボタンをクリックすると思いますが、リンゴは合理的にあなたを拒否することができます。しかし、それがあなたのデータベース/ Filemanagrの破損の読み込みに失敗した場合には、それは意味をなさないかもしれません... – Honey

+0

@Honeyデータベースが壊れている場合にアプリケーションを終了すると、ユーザーの視点はどのようになりますか?彼らはアプリを開き、すぐに閉じます(ユーザーはクラッシュだと思うし、使えないアプリです)。または、ユーザーにアプリケーションを再インストールするか、データベースを再作成するかを知らせることができます(アプリを閉じるためのポイントは何ですか?) –

答えて

50

exit(X)ここで、Xは、(文書による)数値が動作するはずです。 しかし、これはAppleによって推奨されておらず、AppStoreでは受け入れられません。 なぜですか?これらのガイドラインのため、私のアプリの1つが拒​​否されました:

あなたのアプリには、アプリを終了するためのUIコントロールが含まれています。 これは、iOSヒューマンインターフェイスガイドライン(App Storeレビューガイドラインでは が必要です)に準拠していません。

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

のiOSヒューマンインターフェイスガイドラインは、常に人々が別のアプリケーションを開いたり、電話などのデバイス 機能を使用するには、ホームボタン を押すと、iOSアプリケーションの停止を停止する準備ができて。特に」、

を指定します、人々は アプリケーション閉じるボタンをタップするか、メニューから[終了]を選択していない、iOSアプリケーションべき良い 停止の経験を提供するために:。 ので、できるだけ早くできるだけ頻繁となど

保存ユーザデータとして合理的に通知を終了または終了することができます いつでも。

アプリケーションを再起動したときに人々が文脈を失わないように、最高の詳細レベルで停止するときに現在の状態を保存します。 たとえば、「。現在のスクロール位置を保存 、あなたのアプリが表示されたデータをスクロールする場合

>あなたの アプリを終了ための任意のメカニズムを削除するために適切であろう。

また、その機能を非表示にすると、クラッシュとしてユーザーに認識されます。

+0

それはどういう論理ですか?ユーザーが自分のアプリケーションにログインしたくない場合は、「もっと行きたくない場合は、ホームボタンを押してこのアプリケーションを停止してください」といったような謙虚な要求をしてください。 – Adnan

+3

いいえFaceBook AppやInstagramの例を見てください。彼らがログインしていない場合、あなたはパブリックコンテンツを持っていない場合、さらに進まないでしょう。 – Larme

24

あなたは、iOSアプリを終了するには、exitメソッドを使用することができます。

exit(0); 

あなたはもう一つの方法は、[[NSThread mainThread] exit]

ただしを使用している同じ警告メッセージを言うと

を終了するには彼に尋ねるべきこのようにしないでください

アップルによれば、あなたのアプリはそれで終わらないはずです自分自身。ユーザーがホームボタンを押していないため、ホーム画面に戻ると、ユーザーにアプリがクラッシュしたような印象を与えます。これは混乱し、非標準的な動作であり、避けるべきです。

+0

iOSアプリを自分で終了しないでください。 – trojanfoe

+0

私の更新を参照してください。 –

+0

はい、アップグレードして終了するために[OK]を押してくださいというメッセージが表示されます。 –

関連する問題