ここ数日、FlutterでAndroidアプリを書く、ということに入門してみています。 Androidアプリの開発自体は大分前(無印Galaxy Sを使っていた頃なので、EclairとかFroyoとかの頃)にすこしだけやったことがあるんですが、そのころと比べるとかなり簡単に、きれいなアプリがシュッと動いて、ちょっとばかし感動しています。
扨、Flutter/Android開発の環境構築ですが、ほとんどのドキュメントがAndroid Studioを前提としており、私のようなemacsユーザがどうしたらいいのか、ちょっとばかし躓きそうなので、メモがてら残しておきます。
なお、基本的な手順は公式サイト に準じます。また、環境はmacOS Catalina バージョン 10.15.1、emacsはbrewで入れるemacs-mac 26.3です。 Flutterのバージョンは執筆時点でv1.12.13+hotfix.5でした。
Flutter SDKのインストール
公式サイト
のダウンロードリンクからFlutter SDKをダウンロードしてきて解凍、任意の場所に配置します。私はなんとなくで$HOME/.local/flutter
以下に配置しています。
|
|
配置できたらPATHを通します。
私はzshを使っているので、$HOME/.zshrc
に以下の行を追加しました。
|
|
PATHを通したら、flutter --version
でちゃんとPATHが通っているかを確認します。
Android SDKのインストール
公式サイト
の手順ではAndroid Studioを入れろとのことですが、emacsを使う予定なので、Android Studioはインストールせず、Android SDKのみをインストールします。
Android Studioのサイト
へアクセスし、DOWNLOAD OPTIONS
をクリックしてCommand line tools onlyのところからmacOS用のCommand line toolsをダウンロード、Flutter SDKと同様に適宜配置してPATHを通すか、簡単にbrew cask install android-sdk
とします。
私は今回はbrewで入れました。(Flutter SDKもbrewで配布されていますが、Flutter SDKは少し古かったので、公式からダウンロードしてきた方が良さそうです)
brew cask install android-sdk
をしたときにもメッセージが出ますが、android-sdkを使用するにはJDK 8が必要なので、brew cask install adoptopenjdk8
としてJDKもインストールしておきます。
インストールできたら、ANDROID_HOME
環境変数をandroid-sdkのパス(brewで入れた場合は/usr/local/share/android-sdk
)に設定し、android-sdkにもPATHを通しておきます。
|
|
PATHが正しく通っていれば、sdkmanager
が使えるようになっているはずなので、次のコマンドでSDKをインストールします。
|
|
続いて、flutter doctor --android-licenses
を実行し、android SDKのライセンスに同意します。
ここまでやったあと、flutter doctor
コマンドを実行すると、FlutterおよびAndroid toolchainがOKになると思いますので、あとはお手持ちのAndroid端末のUSBデバッグを有効にし、公式のデモアプリを実行してみましょう
。
emacsの設定をする
use-package
を使用している場合は、次の設定を入れてemacsを再起動します
|
|
dart-sdk-path
およびflutter-sdk-path
の値は適宜変更してください。これでdartファイルを変更時にホットリロードが走るようになります。