flutter 环境出错后排查

莫名其妙地环境坏了

VSCode 终端里执行 flutter run 卡在 installing..

模拟器上闪了一下,打不开,
应该是安装出错爆掉了

flutter doctor 检查一下:

X Android license status unknown
Try re-installing or updating your Android SDK Manager


打开 Android Studio 的 SDK 工具,

把SDK删掉,重新安装试试。

The following components will be deleted:

虚拟机也全删掉。

重新添加虚拟机,选择 Download 系统镜像

仍然不能解决。。。

使用 Android Studio 确认下新环境是不是没问题,
新建了demo工程,启动,结果一切正常。

重新搞环境也不行的话,
但AndroidStudio那边的正常,
看来不是环境问题,而是工程问题。


还好有版本管理,【git】
一切回复到从前,从头再来~

旧代码可以启动。
最终定位原因:
出错前的操作为:修改 包名(package)和【pubspec.yaml】的【name】了,
虽然正常生成了 apk 安装包,
但安装到虚拟机上后并不能运行,
显然里面出错了。

查了一遭,发现是有一处改漏了。

需要修改的位置,

总结如下:

1.修改包名

搜索 AndroidManifest.xml,一共能找到三个,
都修改(有个debug里的应该可以不改,反正顺手改呗)

  • android\app\src\main\AndroidManifest.xml

  • android\app\src\profile\AndroidManifest.xml

  • android\app\src\debug\AndroidManifest.xml

根目录下 pubspec.yaml

  • pubspec.yaml

最后一处
也是我遗漏的地方,没想到还要改java/kt文件

  • MainActivity.kt 或 MainActivity.java

    安卓用 java 语言 或 kotlin 语言开发

2.修改【pubspec.yaml】的【name】

  • 各 dart 文件中有包导入的地方

这个名字(name),只影响所有 dart 文件,
在本项目中 import 'package:这里就是你改的name了/xxx.dart';
这样的引包全都要改,这个是不会改漏的,
因为不改的话编译阶段就会报错出来了

posted on 2019-12-12 16:34  CoderMonkey  阅读(635)  评论(0编辑  收藏  举报

导航