我是靠谱客的博主 笨笨钥匙,最近开发中收集的这篇文章主要介绍Flutter踩坑记,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

最近开始踩坑Flutter,对遇到的一些问题在这里大概做一下记录。

1.找不到Android SDK

在flutter doctor时显示如下错误

  Android toolchain - develop for Android devices
  ✗ ANDROID_HOME = 当前设置的路径(可通过环境变量自定义)
  but Android SDK not found at this location.

若是路径的确设置错误(可以在AndroidStudio中查看SDK路径),那么改成正确的路径即可。

这里我发现设置的是正确的,可还是找不到位置,这与我在安装SDK时自定义了安装路径有关。

最终解决方案:在PATH变量下,添加‘tools’和’platform-tools‘两个值即可。   

详见参考文章1

2.找不到连接的虚拟机设备

同样让人困扰的问题,最后神奇的发现在问题1解决重启AS后,该问题也随之解决。

Flutter doctor 正确配置信息如下图


由于这里不使用IEDA做开发,其红色的×可忽略。

3.用VS Code连接夜神模拟器

由于AS自带的AVD实在不太好用,电脑性能一般还容易卡死,再三筛选后选择了夜神模拟器做测试。

但是在与VS Code连接时遇到了如下问题。

问题原因:AS的版本和夜神版本不一致,保持一致即可。详见参考文章2

4.Your app isn't using AndroidX错误

[!] Your app isn't using AndroidX.
    To avoid potential build failures, you can quickly migrate your app by following the steps on https://goo.gl/CP92wY.

这个提示是说项目并没有使用AndroidX

解决方案:

在gradle.properties中添加如下代码即可

android.enableJetifier=true
android.useAndroidX=true

5.编译项目时遇到的错误1

详见下述错误报告:

Exception in thread "main" java.lang.RuntimeException: Timeout of 120000 reached waiting for exclusive access to file: 
C:UsersAdministrator.gradlewrapperdistsgradle-4.10.2-all9fahxiiecdb76a5g3aw9oi8rvgradle-4.10.2-all.zip
	at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:61)
	at org.gradle.wrapper.Install.createDist(Install.java:48)
	at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:128)
	at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
[!] Gradle threw an error while downloading artifacts from the network. Retrying to download...
Exception: Gradle task assembleDebug failed with exit code 1

我的理解是下载超时了,那么可以自己下好gradle-4.10.2-all.zip文件,然后放入对应的位置即可解决。

详见参考文章5

6.编译项目时遇到的错误2

Project evaluation failed including an error in afterEvaluate {}. 
Run with --stacktrace for details of the afterEvaluate {} error.

FAILURE: Build failed with an exception.

* What went wrong:

这里错误详情没贴全,大概原因就是很常见的镜像源问题,那么全部换国内的阿里镜像即可。 详见参考文章6

build.gradle文件中

buildscript {
    repositories {
        maven{url 'https://maven.aliyun.com/repository/google' }
        maven{url 'https://maven.aliyun.com/repository/jcenter' }
        maven{url 'http://maven.aliyun.com/nexus/content/groups/public'}
        // google()
        // jcenter()
    }
}

7.关于CocoaPods的报错,遇到好几次了!!!

说明:没有指定iOS版本

解决:Podfile文件 去掉这句的注释即可。

 

最后

以上就是笨笨钥匙为你收集整理的Flutter踩坑记的全部内容,希望文章能够帮你解决Flutter踩坑记所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部