Flutter:环境配置问题

一、基本安装按照官网文档即可

https://flutter.io/docs/get-started/install/windows

flutter目前在快速迭代中,建议直接同步github上的代码即可

因为通过release的包安装的版本,也就是一个git库

二、我的安装环境为

windows 7 + vs code + android sdk

我也安装了android studio,实际可以不必安装

三、通过命令 flutter doctor 检查是否配置成功

问题一:提示No devices available

就是没有找到设备,可以用实体机,也可以用模拟器,用AVD Manager创建一个。

我是用Genymotion来创建的,相对资源占用少一点(注:Genymotion的镜像下载很慢,可以到C:\Users\xx\AppData\Local\Genymobile\genymotion.log里获得下载的地址,通过下载工具下载后,复制到C:\Users\xx\AppData\Local\Genymobile\Genymotion\ova下,即可)

问题二:X Android license status unknown.

[flutter] flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, v1.0.0, on Microsoft Windows [Version 6.1.7601], locale zh-CN)
[!] Android toolchain - develop for Android devices (Android SDK 28.0.3)
    X Android license status unknown.
[√] Android Studio (version 3.2)
    X Flutter plugin not installed; this adds Flutter specific functionality.
    X Dart plugin not installed; this adds Dart specific functionality.
[√] VS Code (version 1.30.1)
[√] Connected device (1 available)

这个提示最碰到的,也最麻烦,查找flutter的github上的issues,一般的回答都是用flutter doctor --android-licenses,正常情况下是可以,类似这样,一路就可以了

C:\Users\xx>flutter doctor --android-licenses
Warning: Observed package id 'build-tools;28.0.0-rc2' in inconsistent location 'D:\PlatformSDKs\android-sdk-windows\build-tools\28.0.0-preview' (Expected 'D:\PlatformSDKs\android-sdk-windows\build-tools\28.0.0-rc2')
Warning: Observed package id 'tools' in inconsistent location 'D:\PlatformSDKs\android-sdk-windows\tools2' (Expected 'D:\PlatformSDKs\android-sdk-windows\tools')
Warning: Already observed package id 'tools' in 'D:\PlatformSDKs\android-sdk-windows\tools'. Skipping duplicate at 'D:\PlatformSDKs\android-sdk-windows\tools2'
Warning: Observed package id 'build-tools;28.0.0-rc2' in inconsistent location 'D:\PlatformSDKs\android-sdk-windows\build-tools\28.0.0-preview' (Expected 'D:\PlatformSDKs\android-sdk-windows\build-tools\28.0.0-rc2')
Warning: Observed package id 'tools' in inconsistent location 'D:\PlatformSDKs\android-sdk-windows\tools2' (Expected 'D:\PlatformSDKs\android-sdk-windows\tools')
Warning: Already observed package id 'tools' in 'D:\PlatformSDKs\android-sdk-windows\tools'. Skipping duplicate at 'D:\PlatformSDKs\android-sdk-windows\tools2'
5 of 6 SDK package licenses not accepted. 100% Computing updates...
Review licenses that have not been accepted (y/N)? y

但很多情况是这样的

C:\Users\95>flutter doctor --android-licenses
A newer version of the Android SDK is required. To update, run:
D:\PlatformSDKs\android-sdk-windows\tools\bin\sdkmanager --update

接着按提示输入 sdkmanager --update

C:\Users\xx>D:\PlatformSDKs\android-sdk-windows\tools\bin\sdkmanager --update
Warning: Observed package id 'build-tools;28.0.0-rc2' in inconsistent location 'D:\PlatformSDKs\android-sdk-windows\build-tools\28.0.0-preview' (Expected 'D:\PlatformSDKs\android-sdk-windows\build-tools\28.0.0-rc2')
Warning: Observed package id 'build-tools;28.0.0-rc2' in inconsistent location 'D:\PlatformSDKs\android-sdk-windows\build-tools\28.0.0-preview' (Expected 'D:\PlatformSDKs\android-sdk-windows\build-tools\28.0.0-rc2')
Warning: An error occurred during installation: Failed to move away or delete existing target file: D:\PlatformSDKs\android-sdk-windows\tools
Move it away manually and try again..
done

会报错,是因为执行sdkmanager --update会重新创建一个tools目录。所以要改名当前的tools目录,再执行sdkmanager --update即可。另外android-sdk需要更新包,要事先更新,比如上面提示的28.0.0.rc2

四、再次执行flutter doctor

[flutter] flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, v1.0.0, on Microsoft Windows [Version 6.1.7601], locale zh-CN)
[√] Android toolchain - develop for Android devices (Android SDK 28.0.3)
[√] Android Studio (version 3.2)
    X Flutter plugin not installed; this adds Flutter specific functionality.
    X Dart plugin not installed; this adds Dart specific functionality.
[√] VS Code (version 1.30.1)
[√] Connected device (1 available)

• No issues found!
exit code 0

就提示 no issues了,我暂没有用android studio做flutter项目,不理android studio的提示

五、创建第一个项目 https://flutter.io/docs/get-started/test-drive?tab=vscode

问题一:第一个创建项目编译比较慢,主要是要下载gradle库,库相对大一点,很可能会超时

Exception in thread "main" java.lang.RuntimeException: Timeout of 120000 reached waiting for exclusive access to file: C:\Users\xx\.gradle\wrapper\dists\gradle-4.10.2-all\9fahxiiecdb76a5g3aw9oi8rv\gradle-4.10.2-all.zip

C:\Users\xx\.gradle\wrapper\dists 这个目录有自动下载各种版本的gradle包。

你可以更改,gradlew.bat中的set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar 为某一个grable版本

你也可以多试几次,或者手动下载gradle-4.10.2-all.zip,然后复制到上面的目录中

比如

https://downloads.gradle.org/distributions/gradle-4.10.2-all.zip

问题二:E/flutter ( 2578): [ERROR:flutter/shell/gpu/gpu_surface_gl.cc(85)] Failed to setup Skia Gr context.

发现设备的android api版本小于19,就会报这个错误,也就是android的版本要4.4版以上

看了github上的issues,应该是一个bug,社区已发现这个bug,应该不久就会修复了

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值