有时候开发flutter的时候会碰到很多奇怪的问题,而Bad UTF-8 encoding就是其中一个,当出现这个错误时,它不会有详细的错误提示,网上大多数解决方法都是针对编辑器编码问题,但是实际上编码是正常的,所以这肯定是代码某个地方出现了问题, 没有代码错误定位,这就让人很难受。所以每次遇到这个问题,然后就回滚一下代码。
经过不断尝试,最后终于定位到问题所在,具体解决方式如下:
FormatException: FormatException: Bad UTF-8 encoding 0xb4 (at offset 163)
一、先确定是否是编辑器的编码问题,android studio修改设置. 具体如下 file - other settings - default settings -找到project encoding,改为utf-8
二、如果不是编码问题,那就可能是代码出现了问题,因为flutter 只有一个行错误,并不会定位问题,所以需要输入命令去确定、最终是修改了插件代码导致编译问题。
cd android
gradlew.bat assDebug --stacktrace
然后根据日志可以查看具体是哪个文件有问题,最后定位到问题。