flutter memo1
2021/05/30
そのうち、まとめるネタ1
■開発環境
inteliJ idea
windows10 32GB/core i9
flutterを始めるにあたってメモを適当につけて、まとめて記事にする
■android studioインストール
↑を特別権限のないフォルダに置いて、flutter/binを環境パス通す
■inteliJでfulutter pluginをインストール
新規プロジェクト作成からflutterを選択してフォルダを選ぶ
■疑問点
新規作成時にセレクトボックスでapplication、plugin、packageから選べるがどう違うのかよくわからん。デフォはapplicationが選択されていて、この場合linuxとwindowsのチェックをつけられない。しかしセレクトボックスをpluginにするとそれらも選べるし、その後applicationに選び直すと最初disableだったlinux/winがチェックできるようになる。これはinteliJのバグなのか?
なんせ初めてなもんでこのまま続けて、android/ios/winのクロスプラットフォームアプリをワンソースで作れるか不安だ。それができないならあんまり意味ないと言うか、そのためにflutterに入門しているので初っ端から困った。
->win appを作るなら visual studioをインストールしてからでないと、inteliJでproject作成時にflutterのwindowsフォルダが自動生成できないっぽい
ちゃんと公式読めば手順が書いてて、やっぱググる癖はよくない
・flutter runをするとbuildできるデバイスが表示される
新規プロジェクト作成時にios/android/windows/webを選択して各フォルダができあがっているのにwin/webしか表示されない
・android studioをインストールしてもインストールしてないとか言われることがあった
下記コマンドで解決
flutter config --android-studio-dir="C:\Program Files\Android\Android Studio"
.flutter doctor --android-licenses
でlicense同意する必要があるがエラーで同意できない
->要するにInteliJのAndroid SDKに必要なものがinstallされてなかった
https://www.edoardovignati.it/solved-flutter-android-licenses-exception/
・sdkmanagerの環境パスを通しておく
\Android\android-sdk\tools\bin
・javaとjava tool kitはインストールした。多分必要だったと思う
・ここまでしてもrun androidができない
-> flutter config --enable-android
->意味なかった(意味があったかもしれない)
->Androidはエミュレーターを起動するもんだと気づく
->inteliJの右上にあるデバイス選択をrefleshするとsdk gphone mobileというのが出現していた
スマホっぽい端末が画面に現れ、電源ボタンを押すとAndroidの画面が出てくる
その状態でinteliJ右上のdartのソースを選んで再生ボタンを押すとエミュレーター内でソースが実行される
・久々にプロジェクトを開いたらエラーまみれ
dart pub get
というコマンドが必要らしいが動かない
AndroidManifest.xmlの編集が必要
これでpub getしたらエラーがすっきり消える
->なんかいたるところでpub getが必要になる
->inteliJの場合、pubspec.yamlを片っ端から見て回るとpub getしろとボタンがでるので
クリックするとエラーが消えていく
■よくつかうコマンド
flutter run -d windows
Discussion