現象
以下のページを参照しつつ、Flutter + AWS Amplifyの環境を構築していたら、
手順書通りにやっているのに、Amplifyのコンストラクタが見つからないって言われる。
- 実際のコード
main.dart
// こいつがエラーになる
final _amplify = Amplify();
final _authService = AuthService();
- エラー内容
The method 'Amplify' isn't defined for the type '_MyAppState'.
Try correcting the name to the name of an existing method, or defining a method named 'Amplify'.
解決
以下の二点が手順書間違い。
- Amplifyのライブラリ[amplify_core]を[amplify_flutter]に変更する。
pubspec.yaml
# amplify_core: '<1.0.0'
amplify_flutter: '<1.0.0'
- Amplifyは静的クラスとなっているので、インスタンス作らなくて良い。
main.dart
// 削除
// final _amplify = Amplify();
final _authService = AuthService();
~~
// 変更
// await _amplify.configure(amplifyconfig);
await Amplify.configure(amplifyconfig);
これでビルドエラーは消えました!