🙄
try、catchって?
皆さんこんにちは、ビギナーFlutterエンジニアです。
AIと会社の先輩に聞いてひたすら勉強中の日々です。
エラーが発生する可能性のあるコードを囲む
try { ... } の中に、エラーが発生する可能性のあるコードを記述します。
エラーが発生した場合の処理
tryブロックの後にcatchブロックを記述し、エラーが発生した場合の処理を定義します。
on Exception catch (e) の部分では、Exception型のエラーを捕捉し、そのエラー情報をeという変数に格納します。
安全な実行の保証
エラーが発生しても、アプリがクラッシュせずに処理を続行できます。
// サンプルコード
try {
// ギャラリーから画像を選択するためのピッカーを開きます
final pickedFile = await _picker.pickImage(source: ImageSource.gallery);
// ...
} on Exception catch (e) {
// エラーが発生した場合の処理
if (mounted) {
ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('画像の選択に失敗しました: $e')));
}
}
画像選択処理中に何らかのエラーが発生した場合(例:権限がない、デバイスの問題など)、catchブロックが実行され、ユーザーにエラーメッセージを表示します。これにより、エラーが発生してもアプリがクラッシュせず、ユーザーに何が起きたかを伝えることができます。
Discussion