久しぶりにwindows10でflutterやろうとしたら動かない。firebaseも

pubspec.yamlに書いてあるdartのバージョンの問題

flutter upgrade

flutter doctor --android-licenses が失敗する

java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema

というエラーが出る。解決策は下記だそうで。

How to solve: Android license status unknown and also Android sdkmanager tool not found? Tried everything(as i think) · Issue #51670 · flutter/flutter · GitHub

ただ、Arctic Foxが正式リリースになってたので、試しにupdate。

再びflutter doctor --android-licensesするとエラーは解消したが警告が出力された

PS>flutter doctor --android-licenses
Warning: Observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in inconsistent location 'C:\Users\t.watanabe\AppData\Local\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager-2' (Expected 'C:\Users\t.watanabe\AppData\Local\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager')
Warning: Already observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in 'C:\Users\t.watanabe\AppData\Local\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager'. Skipping duplicate at 'C:\Users\t.watanabe\AppData\Local\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager-2'
Warning: Observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in inconsistent location 'C:\Users\t.watanabe\AppData\Local\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager-2' (Expected 'C:\Users\t.watanabe\AppData\Local\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager')
Warning: Already observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in 'C:\Users\t.watanabe\AppData\Local\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager'. Skipping duplicate at 'C:\Users\t.watanabe\AppData\Local\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager-2'
All SDK package licenses accepted.======] 100% Computing updates...

とりあえず、様子見

wslを無効化する

Intel HAXMを有効化できるようにするため。

android開発だけ行うPCであれば、wslはいらないだろうけど、 api用のサーバも一緒に動かすとなるとかなり面倒。

そうなると、android開発もmacでやった方がいいと言うことになる。

firebase admin sdkを利用できるようにする環境変数

powershellで設定

[Environment]::SetEnvironmentVariable('GOOGLE_APPLICATION_CREDENTIALS', 'C:\somepath\google-services.json', 'Machine')

Android Studiojavaを使う

C:\Program Files\Android\Android Studio\jre\binにパスを通す

flutter build appbundleでエラーが発生

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:extractReleaseNativeSymbolTables'.
> NDK is not installed

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

ndkVersionのバージョンの問題。

build.gradleに書かれている方が古かったので、SDK Managerに乗ってるバージョンをそのままコピペ。 この辺りの設定もパソコンが変わると注意しないといけない。

vscodeのdebug consoleが文字化けする

こういうところもwindowsで、flutter開発が向いてないところだと思います。

環境変数JAVA_TOOL_OPTIONSを設定。下記を参考にしました。-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8を設定します。

http://umezawa.dyndns.info/wordpress/?p=5801

f:id:ta_watanabe:20211002230505j:plain
環境変数追加
f:id:ta_watanabe:20211002230637j:plain
文字化けが直ったところ

No toolchains found in the NDK toolchains folder for ABI with prefix: arm-linux-androideabi

とりあえず、ndkをすべて削除。でも最新だけ残って、それで動くようになった。

ndkが何故か中途半端に消えてた

build中にエラーが発生し、

* What went wrong:
Execution failed for task ':app:stripDebugDebugSymbols'.
> NDK at C:\Users\t.watanabe\AppData\Local\Android\sdk\ndk\23.0.7599858 did not have a source.properties file

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 36s
Running Gradle task 'assembleDebug'...                             38.6s
Exception: Gradle task assembleDebug failed with exit code 1

android studio見て、なんか消えてるなと思って、再インストールしたらこんな状況。 -2がついてない方はほとんど空だったので、-2の方をリネームして利用したらビルドできるようになった。

f:id:ta_watanabe:20211012212345j:plain

一つ上のところで、全削除したことが影響なのか。。。