Androidアプリがクラッシュすると、ユーザーはアンインストールしてしまいます。本セッションでは、Android特有の信頼性に関する課題に焦点を当て、アプリがクラッシュする前にどのように対処するかを探ります。 ドメインエラー(想定されたビジネスロジックにおける失敗)とシステム障害(回復不能なハードウェア/OSの問題)との決定的な違いを確立し、それぞれに適切な戦略を適用する方法を説明します。Kotlinの組み込みの制限を超えたコンパイル時安全性を提供するカスタムResultモナドの構築方法を学び、NASAのミッションクリティカルな安全規則がAndroidの世界でどのように適用できるかを見ていきます。また、避けられないシステム障害に対するネイティブクラッシュデバッグ技術も習得します。 ハードウェアの状態破損の処理からメモリ負荷時の適切なデグレーションの手法まで、Androidの最もトリッキーな信頼性シナリオ(複雑な状態管理、ネイティブコード統合、致命的なクラッシュではなく適切にデグレーションするアプリの構築)に対する実証済みのパターンを習得できます。 (DroidKaigi実行委員会による翻訳)
Bogusz Pawłowski Staff Software Engineer @ SpotOn
アプリの安定性を向上させ、クラッシュ率を削減するために、原則に基づいたエラーハンドリングを探している個々のコントリビューターおよびエンジニアリングマネージャー。