Flutter:Android側のコードをAndroid Studioでデバッグしたい

Keisuke Kawajiri
Learn about Flutter
4 min readFeb 27, 2020

最近、FlutterでAndroid側の機能を呼び出すためにPlatform channelを利用してみました。
その際に、Android側のコードをデバッグするためにブレークポイントを貼りデバッグ実行したのですが、ブレークポイントで止まりませんでした。

公式サイトなどを調べてみたところ、Android側のコードをAndroid Studioでデバッグする方法が分かったので、本記事で紹介したいと思います。
紹介する内容は下記の公式サイトの内容です。

まず、Android Studioを起動してデバッグ実行します。

次に、Android側のコードを別のウィンドウで開きます。
その方法は、2通りあります。
1つ目は、まずAndroid側のコード(.kt or .java)を開きます。
すると、エディタの上部に「Open for Editing in Android Studio」とリンク付きのラベルが表示されるので、それを押下します。

すると下図のダイアログが表示されるので、「New Window」を選択します。

2つ目の方法は、プロジェクトビューでandroidディレクトリのプロパティを表示させて、Flutter >「Open for Editing in Android Studio」の順で押下していきます。
すると、上図のダイアログが表示されるので、「New Window」を選択します。

次に、新規で開いた(Android側)ウィンドウの方で「Attach Debugger to Android Process」 を実行します(図中のメニューアイコン もしくは、 cmd+shift+Aからアクションを検索して実行できます)。
すると、ダイアログが開くので、そこで現在実行中のデバッグプロセスを選択して、OKを押下します。

以上の操作で、Flutter側は元々開いていたウィンドウ(図中左側)、Android側は新規で開いたウィンドウ(図中右側)でデバッグができるようになります。

Android側のブレークポイントで止まっている様子

但し、上記方法ではアプリがすでに起動しているので、Android側の起動処理(例えば、ActivityのonCreateで実行する処理など)はデバッグできません。
もし、その辺りの処理をデバッグしたい場合は、一度Flutter側(元々開いていたウィンドウの方)のデバッグ実行を止めてから、改めてAndroid側のウィンドウ(新規に開いた方)でデバッグ実行すれば可能です。

今回は、Android側のコードをAndroid Studioでデバッグする方法について紹介しました。

--

--