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';
这样的引包全都要改,这个是不会改漏的,
因为不改的话编译阶段就会报错出来了
flutter 环境出错后排查的更多相关文章
- 设置sudo不输入密码 sudoers 编辑出错后的补救方法
一 设置sudo为不需要密码 有时候我们只需要执行一条root权限的命令也要su到root,是不是有些不方便?这时可以用sudo代替.默认新建的用户不在sudo组,需要编辑/etc/sudoers文件 ...
- flutter环境配置
java环境安装 做基于android的原生app,首先需要安装java环境,需要到官网https://www.oracle.com/technetwork/java/javase/downloads ...
- /etc/profile 路径出错后相关的命令失效解决方式
关于 Linux 的配置文件 /etc/profile 路径出错后相关的命令失效解决方式(如:ls,vi不能用) 今天学习LINUX 下配置jdk 和安装tomcat 通过VI编辑/etc/profi ...
- 修改profile出错后的补救
修改profile出错后的补救,谢天谢地export命令还能用 今天在鼓捣centOS的时候,一不小心把用户配置文件profile给改错啦.重启之后进不了图形界面,终端里的命令也有大半不好使啦. 我试 ...
- win7系统下flutter环境搭建+AndroidStudio编译插件
flutter学习网址:https://flutter-io.cn/ ----------------------------------------------------------------- ...
- Flutter环境安装,ios真机调试
MAC: 下载Flutter,官网的可能很慢.可以去我的网盘下载, 提取码: 3t6y. 下载完的包会在~/Downloads目录下,我们移到~/opt/flutter目录下. mkdir ./opt ...
- Mac最新Flutter环境搭建运行和对比理解声明式UI
前言 这段时间一直都在学习和写关于SwiftUI的东西,前面也总结了四篇文章来大体上说了下Demo中功能实现的一些细节,后面准备开始了解学习一下Flutter,争取在年前能再用Flutter写一份项目 ...
- Flutter环境搭建
本文介绍mac上搭建Flutter环境 1.Flutter官方提供中国地区镜像地址:https://github.com/flutter/flutter/wiki/Using-Flutter-in-C ...
- mysql 批处理文件出错后继续执行
在升级批处理sql脚本的时候,由于各种编写的不规范.不可重复执行,我们通常希望在sql脚本出错后不中止,而是执行完成.虽然这些问题可通过编写可重复执行的mysql存储过程比如add_column/dr ...
随机推荐
- Codeforce-Ozon Tech Challenge 2020-A. Kuroni and the Gifts
the i-th necklace has a brightness ai, where all the ai are pairwise distinct (i.e. all ai are diffe ...
- 刷新DNS解析缓存+追踪+域名解析命令
刷新DNS解析缓存 命令:ipconfig /flushdns 用于改完host之后. 追踪IP: 命令:tracert www.baidu.com 域名解析: 命令:nslookup www.bai ...
- P1460 健康的荷斯坦奶牛 Healthy Holsteins (简单的dfs)
题目描述 农民JOHN以拥有世界上最健康的奶牛为傲.他知道每种饲料中所包含的牛所需的最低的维他命量是多少.请你帮助农夫喂养他的牛,以保持它们的健康,使喂给牛的饲料的种数最少. 给出牛所需的最低的维他命 ...
- Python基础03 id
id id(x)对应变量x所引用对象的内存地址.可以把id(x)看成变量x的身份标识. is 有时在编程中需要与变量的身份标识打交道,但不是通过 id 函数,而是 is 操作符. The operat ...
- auto_ptr和shared_ptr
<Effective C++>在资源管理一节提到了智能指针,智能指针中最著名的当属auto_ptr和shared_ptr.本文主要研究两者的实现. auto_ptr的实现: templat ...
- 手把手教你进行Scrapy中item类的实例化操作
接下来我们将在爬虫主体文件中对Item的值进行填充. 1.首先在爬虫主体文件中将Item模块导入进来,如下图所示. 2.第一步的意思是说将items.py中的ArticleItem类导入到爬虫主体文件 ...
- rsync服务端一键安装rsync脚本(非源码)
export RSYNC_PASSWORD=123 USER=rsync AUTHUSERS=bck MK=backupmk local_dir=/backup yum remove rsync &a ...
- 【Spark】使用java语言开发spark程序
目录 步骤 一.创建maven工程,导入jar包 二.开发代码 步骤 一.创建maven工程,导入jar包 <properties> <scala.version>2.11.8 ...
- Qt 操作sql server数据库
添加qtsql的库 连接数据库 QSqlDatabase_db = QSqlDatabase::addDatabase("QODBC"); _db.setHostName(); _ ...
- Java 多线程启动为什么调用 start() 方法而不是 run() 方法?
多线程在工作中多多少少会用到,我们知道启动多线程调用的是 start() 方法,而不是 run() 方法,你知道原因吗? 在探讨这个问题之前,我们先来了解一些多线程的基础知识~ 线程的状态 Java ...