FlutterFlow 実機で動かす

STEP
スマホの端末情報 → ソフトウェア情報 → ビルド番号を 7 回タップ
STEP
スマホの設定 → 開発者向けオプション → USB でデバッグを ON
STEP
USB で接続します、そして雷アイコンの右隣をクリック
Local Runができていることが前提となります

Local Runはじめはこの2つの表示だけです
下記のぐるぐる回転アイコンをクリック

STEP
アンドロイド(私のスマホはPixel8a)が表示されたらTestクリック
STEP
しばらくまつと実機に表示

くるくるアイコンがくるくるしている間はおまちください。反応している証拠。
最初の1回目は結構待ちます。


目次

ここから私の忘備録です。

FAILURE: Build failed with an exception.(ビルドが例外で失敗しました。)
* Where:Build file ‘/Users/murakamihisayo/Library/Application Support/io.flutterflow.prod.mac/monthly_fee_stamp/android/app/build.gradle’ line: 2
・・・・

最初実機に繋いだ時こんなふうなメッセージがでたので、まずはChatCRTなどで調べました。
私が最初出たエラーは和訳すると
「Android Gradle プラグインは実行に Java 17 を必要なのに、あなたは現在 Java 11 を使用しています。」

方法はいろいろあるみたいですが
「ターミナルでコマンドをいれてやる方法はありますか」と聞いてみます。

手順:1

Java 17がインストールされていることを確認する

  • ターミナルで以下のコマンドを実行して、インストールされているJDKのパスをリストアップします。
Bash/usr/libexec/java_home -V

このコマンドの出力の中に、Java 17のパス (/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home のような形式) があることを確認します。

手順:2

見つからなかったので、まずJava 17をインストールする必要があり。
Homebrewを使用している場合は、brew install openjdk@17 でインストールできます。

これでFlutterは、Androidのビルド時に指定したJava 17を使用するようになります。

Homebrewがまだの場合は下記

Homebrewのインストール

HomebrewはMac用のパッケージマネージャーです。以下のコマンドをターミナルに貼り付けて実行してください。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

このコマンドを実行すると、パスワードの入力を求められたり、xcode-select のインストールを促されたりすることがあります。画面の指示に従って進めてください。インストールが完了したら、brew --version と入力してバージョンが表示されることを確認。

手順3: インストールされたJDKのパスを確認する

インストールが完了したら、brew コマンドを使ってJava 17のインストールパスを確認

brew --prefix openjdk@17

このコマンドは、例えば /opt/homebrew/opt/openjdk@17 のようなパスを出力します。

注意: HomebrewのバージョンやMacのチップ(Intel MacかApple Siliconか)によって、パスは /usr/local/opt/openjdk@17 または /opt/homebrew/opt/openjdk@17 となります。

手順4: FlutterにJDKのパスを設定する

最後に、手順3で確認したパスを使って、FlutterにJDKのパスを設定します。

Bash

flutter config --jdk-dir /opt/homebrew/opt/openjdk@17

注意: /opt/homebrew/opt/openjdk@17 の部分は、あなたの環境で brew --prefix openjdk@17 が出力した正確なパスに置き換えてください。

これで、Flutterのビルド時にJava 17が使用されるようになりました。

設定が正しく行われたか確認するために、flutter doctor -v を再度実行してみてください。Android toolchain のセクションで、Java binary at: のパスがJava 17を指していることを確認します。

もしターミナルに表示された /opt/homebrew/opt/openjdk@17 なら

brew --prefix openjdk@17 コマンドは、インストールしたOpen JDK 17の正確なパスを教えてくれるためのものです。あなたの環境では、このコマンドを実行した結果が /opt/homebrew/opt/openjdk@17 だった、ということになります。

したがって、このパスをそのまま使ってFlutterの設定を行います。


最終的な解決コマンド

以下のコマンドをターミナルに貼り付けて実行

flutter config --jdk-dir /opt/homebrew/opt/openjdk@17

このコマンドが実行されると、FlutterはAndroidのビルドにJava 17を使うよう設定されます。


設定が完了したか確認する方法

念のため、以下のコマンドを実行して設定が正しく反映されたか確認しましょう。

flutter doctor -v

このコマンドの出力の中に、Android toolchain というセクションがあります。その中の Java binary at:/opt/homebrew/opt/openjdk@17/bin/java のようなパスを指していれば、設定は成功です。

これで、FlutterFlowでビルドエラーとなっていた問題が解決するはずです。

「No issues found!」と表示されたなら、すべて正常に設定されています!

目次