Flutter のメモ
Flutter をWindows で開発したいメモ
※ここに概要を追加(あとから)
Flutterというのを使えばWindowsでも iOS のモバイルアプリを開発できるらしいときいた.でもよく調べるとビルドがXcodeとかいうやつしかできないらしい(Evilじゃん)
が,そのビルドを代わりにやってくれるCodeMagicっていうサービスが有るとか.
WindowsでVScodeを使いつつFlutterをやり,iOS とAndroid両方のモバイルアプリを作りたいのでメモを重ねる
リンクをためていくページ
インストール
信者なのでWSL2を使う:Linux向けのインストール方法に従う
cf. https://flutter.dev/docs/get-started/install/linux
Get the Flutter SDK
On Linux, you have two ways you can install Flutter.
2つの方法がある:
- Install Flutter using snapd
- Install Flutter manually
なんだか2つ目の方法はミスったときにヤバそうだった.自信がないので1つ目の方法を利用する.幸いにも私の環境でのWSL2には snap
が存在していた(which snap
でコマンドを調べればよい)
→ と思ったら error: cannot communicate with server: Post http://localhost/v2/snaps/flutter: dial unix /run/snapd.socket: connect: no such file or directory
と言われてしまった.
色々調べると,snap
ってのはかなり頑張っているイイヤツらしい :
snapはCanonicalとUbuntuコミュニティが推進する「ユニバーサルパッケージ」です。依存するソフトウェアをすべてパッケージに含めることで,依存関係を気にせずあらゆるディストリビューションでインストール可能なバイナリパッケージとして利用できます。
ので,今後のことも考えて ①snap
をWSL2でも使えるようにする ② snap
でflutter を入れる ところまでやろうと思う
snap の準備
sudo apt-get update && sudo apt-get install -yqq daemonize dbus-user-session fontconfig
sudo daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target
exec sudo nsenter -t $(pidof systemd) -a su - $LOGNAME
snap version
cf. https://github.com/microsoft/WSL/issues/5126#issuecomment-653715201
参考になりそうな文献
それでもダメなの……
なんかよくわからんけど,snap 実行の際にログインパスワードを要求されて,login.ubuntu.com にアカウント作ったのに弾かれてしまう(最悪)
切り替えて,マニュアルインストールを試す.
というかこっちのほうがかんたんだった……好きなところにCloneしてきてそれを .profile
とかで環境変数読み込むようにすればいいっぽい(私の場合は export PATH="$PATH:$HOME/flutter/bin"
でシェル起動ごとに読みこむようにしてある).
git clone https://github.com/flutter/flutter.git -b stable
ついでに,以下のコマンドを実行することで諸々あとからよくなるらしいので実行した(説明略).
flutter precache
flutter upgrade
実行環境の診断
flutter doctor
を実行すると,開発環境に必要な物が揃っているか診断してくれる.私の場合は以下のような診断が出た.
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 2.0.5, on Linux, locale C.UTF-8)
[✗] Android toolchain - develop for Android devices
✗ Unable to locate Android SDK.
Install Android Studio from: https://developer.android.com/studio/index.html
On first launch it will assist you in installing the Android SDK components.
(or visit https://flutter.dev/docs/get-started/install/linux#android-setup for detailed instructions).
If the Android SDK has been installed to a custom location, please use
`flutter config --android-sdk` to update to that location.
[✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.
[!] Android Studio (not installed)
[!] Connected device
! No devices available
! Doctor found issues in 4 categories.
Android Studio ではなく VScode での開発を予定しているのでこの警告は放置する.接続しているデバイスがないってのも現時点では当然なので放置.
→ Android 向けに開発したいなら前者が,ウェブ向けにも開発したいなら後者が必要になるようだ.Android toolchain
と Chrome
がないのはダメっぽいのかも?現時点では要らないので放置 と思っていたが,エミュレータ環境が必要になるということがわかった.WindowsなのでiOSは再現できないが,代わりにAndroid Studio(SDK)を使うことになる.