Open5

【flutterエラーの巻】

しずぽっぽしずぽっぽ

「firebaseを導入中、iosエミュレーターが起動しない」
Gradle task assembleDebug failed with exit code 1
とエラーが発生。少し苦戦したので解決策を書きます。

解決策
参考:https://note.com/ar_vr_mr/n/n6f383d81334c
上の記事を元に行いました。
build.gradleに文を追加すると解決します。
原理が詳しくわからないので、勉強していきたい。

しずぽっぽしずぽっぽ

「Flutterでのビルドランナーのエラー「Could not find a command named 'watch.'」の解決方法」

概要:
Flutterアプリケーションを開発している際に、ビルドランナーを使用してコードの自動生成を行いたい場合、flutter pub run build_runner watchというコマンドを実行します。しかし、このコマンドを実行すると、「Could not find a command named 'watch.'」というエラーが発生することがあります。この記事では、このエラーの原因と解決策について解説します。

はじめに:
Flutterアプリケーションの開発中、ビルドランナーを使用してコードの生成を行う際に、flutter pub run build_runner watchコマンドを実行したところ、エラーが発生しました。この記事では、このエラーが発生した原因とその解決方法について詳しく説明します。

問題の特定:
エラーメッセージ「Could not find a command named 'watch.'」から、ビルドランナーがwatchコマンドを認識できていないことがわかります。

問題の原因:
このエラーの原因は、おそらくビルドランナーのバージョンの不一致や、パスの設定の問題が考えられます。

解決策の検討:
最初に、ビルドランナーのバージョンが古い可能性があります。また、パスの設定に問題があるかもしれません。

解決策の実行:

flutter pub global listコマンドを実行して、現在のビルドランナーのバ
ージョンを確認します。
2. flutter pub global activate build_runnerコマンドを使用して、ビルドランナーを最新バージョンにアップデートします。

パスの設定を確認し、必要に応じて修正します。
問題の解決:
解決策を実行した後、再度flutter pub run build_runner watchコマンドを実行しました。すると、エラーメッセージが表示されず、ビルドランナーが正常に起動されました。問題が解決され、開発作業をスムーズに再開できるようになりました。

まとめ:
ビルドランナーのバージョンを最新にアップデートすることで、問題が解決されました。また、パスの設定を確認することも重要です。このように、適切な解決策を実行することで、Flutterアプリの開発作業を円滑に進めることができます。

参考情報:

Flutter公式ドキュメント
Zenn

※お試しでchatGPTに書かせてみました

しずぽっぽしずぽっぽ

flutter大学の教科書2をやっている時に発生したエラー

ertical viewport was given unbounded height. Viewports expand in the scrolling direction to fill their container. In this case, a vertical viewport was given an unlimited amount of vertical space in which to expand. This situation typically happens when a scrollable widget is

てな感じの長いエラーが出ました。ざっくり言うとスクロール部分に問題があるみたいです。
最終的に原因はわかりませんでしたが、解決はしたので記す。

    GridView.count(
      shrinkWrap: true,
      physics: const NeverScrollableScrollPhysics(),

「flutter gridview」を公式で検索したコードのコピペに、上の2行を追加すると改善しました

しずぽっぽしずぽっぽ

「firebaseにテキストを送るとき、エラーが出て反映されない」

flutter大学さんの教科書に沿ってコードを書いてる時以下のようなエラーが出ました。

firebaseexception ([cloud_firestore/permission-denied] the caller does not have permission to execute the specified operation.)

データベースへのアクセスが許可されていない。とのことなので、調べてみるとfirebaseのルールを変更すると、全許可と全拒否と認証すれば許可に設定できるそうです。
リンク:https://firebase.google.com/docs/firestore/security/get-started?hl=ja#auth-required

以下の画像のように変更し、無事データベースへの更新ができました。

しずぽっぽしずぽっぽ

firebaseのパッケージを入れたらiosシュミレーターが起動しなくなった。

公式:https://firebase.google.com/docs/flutter/setup?hl=ja&platform=ios
を参考に、firebaseと接続をした後、ビルドすると
User
FirebaseException ([core/duplicate-app] A Firebase App named "[DEFAULT]" already exists)
とエラーが。chatgptに聞いても解決しなかったのですが、単純なミスでつまづいていました。
公式ドキュメントにもあるように、
flutter pub add firebase_core
を実行後にエラーが消えるのですが、その後にビルドではなくもう一度
flutterfire configure
で最新にする必要がありました。
公式。見ましょう。