iOSで致命的なエラー(あらゆる種類のエラー)を処理することはどういうことですか?私は、アプリを消滅させる前に何かが間違っていたことをユーザーに知らせるために、アプリを生き残らせる魔法の方法を探しているわけではありません。iOSで致命的なエラーを処理する
答えて
致命的なエラーは、ランタイムエラーです。 は、プログラミングエラーを示しているため、致命的なエラーをキャッチしないでください。代わりにコードを修正する必要があります。クラッシュは、コードにエラーを修正しない限り、停止できないように構築されています。あなたが何かが間違っていたことをユーザーに知らせることは、あなたが正しく動作させない限り、実行できず、とにかく助けにならないでしょう。あなたのコードを変更しない限り、彼らは、停止できないことを、私たちはdo-try-catch
構造に致命的なエラーの原因となるものを置くことができることを証明する
:
do{
var car: String? = nil
try print(car!)
}
catch{
print("Something went worng")
}
明らかに、これはまだでクラッシュ:
fatal error: unexpectedly found nil while unwrapping an Optional value.
代わりにプログラムを修復する必要があります。
nil
のラッピングのような問題が発生した場合、2つの状況が発生することがあります。正しい試行錯誤があり、エラーが検出された場合、アプリは引き続き動作します。そうしないと、アプリケーションがクラッシュするという致命的なエラーが発生します。したがって、致命的なエラーは例外処理の欠如の結果であり、クラッシュが発生する前にユーザが何かを停止して表示できるものではありません。
他にも言及したように、致命的なエラーは発生しません。そのエラーが起こらないようにするためにできることはすべて実行してください。
do catch
ブロックを使用したり、オプションを正しく処理したりすることを防ぐことができます。私はそれについてAppleのドキュメントを読むことをお勧めします!がんばろう!
ガードステートメントを使用すると、エラーを直接ユーザーに通知する方法はありませんが、ガードステートメントを使用すると、最初にオプションの値が存在するかどうかを確認し、オプションの値が存在しない場合は早期に戻ります。これは時々クラッシュからあなたのアプリを保存します。
- 1. 致命的なエラーを処理して処理する方法
- 2. Windowsサービスで致命的なエラーを処理する
- 3. Tesseract OCR 4.0の致命的なエラーを処理する方法iOS Swift
- 4. IOSのQRコードスキャナーアプリケーションの致命的なエラー
- 5. register_shutdown_function()を使用してPHPで致命的なエラーを処理する
- 6. Djangoフォームのclean()メソッドの中で致命的なエラーを処理するには?
- 7. 致命的なエラー:
- 8. 致命的なエラー
- 9. 致命的なエラー:
- 10. 致命的なエラー:
- 11. 致命的:未処理のサブモジュール
- 12. 致命的な例外を処理する
- 13. 致命的なエラーを修正する方法致命的なエラー:クラスCI_Session_files_driver(コードイグナイター)?
- 14. SQLエラー: '致命的なエラー'
- 15. PHPの致命的なエラー - キャッチできる致命的なエラー:クラス
- 16. Pylonsでの致命的でない例外の処理
- 17. Wordpressのエラー:致命的なエラー:</p> <p>致命的なエラー:
- 18. コンパイルエラー: `致命的なエラー:gfc_todo:`
- 19. Joomlaの致命的なエラー
- 20. 致命的なPythonエラー:Py_Initialize()
- 21. $ wpdb致命的なエラー
- 22. Mongoの致命的なエラー
- 23. eText.setError()致命的なエラー
- 24. OOPの致命的なエラー
- 25. 致命的なエラー:CAGradientLayer
- 26. Androidの致命的なエラー
- 27. 致命的なエラーC1083
- 28. 致命的なエラー:134217728
- 29. PHP致命的なエラーが
- 30. 致命的なエラー:クラス
私はそれが私がクラッシュからアプリを停止する方法を探していないと書いている方法だと思う。私はちょうどアプリがクラッシュする前にいくつかのコードを実行する方法がいくつかあるのだろうかと思っています。基本的に私が達成したいのは、何らかの形でクラッシュイベントを "観測"し、クラッシュイベントでユーザーにアラートを表示し、次にユーザーが[OK]をクリックする - クラッシュに進む – user3581248
@ user3581248できません。 –
なぜdownvote? –