在学习使用flutter的过程中,遇到一些工程上的问题。比如flutter的配置,IDE的设置等等。
flutter doctor 需要jdk1.8
需要jdk1.8;如果装的是jdk9及以后的版本,flutter doctor会一直提示你需要升级android SDK
https://flutter.io/flutter-for-android/#views
flutter升级遇到网络错误 - Got socket error
win7双击打开flutter_console.bat
,尝试用flutter upgrade
升级时,遇到错误。
E:\sdk_flutter\flutter>flutter upgrade
Checking Dart SDK version...
Downloading Dart SDK from Flutter engine 09d05a38912a3c1a906e95099cac9a7e14fae85
f...
Unzipping Dart SDK...
Updating flutter tool...
Got socket error trying to find package mockito at https://pub.dartlang.org.
Error: Unable to 'pub upgrade' flutter tool. Retrying in five seconds...
报错:连接不上https://pub.dartlang.org
用梯子和不用梯子都会报这个错误。查阅官网https://flutter.io/get-started/install/
官网说中国用户请参考https://github.com/flutter/flutter/wiki/Using-Flutter-in-China
参考文章建议设置2个环境变量
export PUB_HOSTED_URL=[https://pub.flutter-io.cn](https://pub.flutter-io.cn/)
export FLUTTER_STORAGE_BASE_URL=[https://storage.flutter-io.cn](https://storage.flutter-io.cn/)
我用的是win7,在环境变量 -> 用户变量中添加了这2个变量
FLUTTER_STORAGE_BASE_URL https://storage.flutter-io.cn
PUB_HOSTED_URL https://pub.flutter-io.cn
再重新执行flutter upgrade
即可
使用flutter_console.bat
时,应该以管理员身份运行
Android Studio 3.0.1 的flutter项目找不到设备 - no connected device
尝试运行flutter项目时,出现提示框
no connected device
此时注意到as顶部工具栏的右边少了设备框【Flutter Device Selection】
as顶部栏
红圈的位置本应该显示当前连接的设备,但是在代码写错一次后,这一栏就消失了。
错误排查
尝试清缓存并重启as,那一栏仍然未出现
清缓存并重启as
flutter已经升级到当前最新版本。
在git-bash中运行flutter doctor
,并没有发现什么问题。
$ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel beta, v0.5.1, on Microsoft Windows [Version 6.1.7601], locale zh-CN)
[√] Android toolchain - develop for Android devices (Android SDK 27.0.3)
[√] Android Studio (version 3.0)
[√] Connected devices (1 available)
• No issues found!
由此猜测是Android Studio的问题。新建一个flutter工程,观察到设备框又正常了
新建的flutter工程
那么原来工程里面为何总是说找不到设备?
仔细回想了一下,参考flutter教程时,添加了一个images
目录,并且修改了pubspec.yaml
文件。检查发现assets的缩进弄错了。把缩进改成2个空格后,设备框就出现了。
# To add assets to your application, add an assets section, like this:
assets:
- images/lake.jpg
由此可见,as对pubspec.yaml
文件十分敏感。
网友评论
手机能检测到。 什么没驱动
或者拿一个普通的android工程试试,看是不是手机的问题。
【重启大法】关掉电脑上所有的模拟器,重启Android studio,检查真机的开发者选项。