flutter从搭建到运行遇到问题记录

近些年,跨平台开发很火,一个Android开发工程师因工作需要,最近开始学习flutter,搭建过程中遇到很多问题,记录下来

本文是已搭配好Android开发环境的角度写的;如果未搭配,请先搭配好;

flutter需要先下载flutter SDK

flutter SDK下载:

下载之后解压可以看到目录结构:

下载好之后需要进行环境配置;打开高级设置-->环境变量,在path中添加flutter SDK下的bin层目录

继续配置系统变量: PUB_HOSTED_URL:https://pub.flutter-io.cn
                  FLUTTER_STORAGE_BASE_URL:https://storage.flutter-io.cn

检查配置:

打开命令行工具,跳转到Flutter目录
运行flutter doctor

第一个,运行flutter doctor --Android-licenses 若正常情况;弹出选择N/Y;一路点击Y同意即可;但我遇到的说需要更新AndroidSDK;这时候遇到一个挺大的坑;运行命令更新陷入了死循环;会一直提示;解决办法:打开idea;file-->sittings-->搜索SDK 切换到SDK tools;

将红框标记下载下来,因为有过时的;提示的命令行下载不下来,所以会一直提示更新;下载完成后执行命令flutter doctor --Android-licenses;一路Y就好了(PS:公司原本链接公司内网会看不到未下载(刷新不出来),只能看到已下载的;切换正常网络即可;例如:家里的网)

打开idea-->file-->plugins-->搜索flutter,点击安装

同样逻辑;dark搜索安装,安装完成后运行flutter doctor

至此环境配置就完成了;

 

点击file-->new -->project-->flutter-->选择flutter SDK 路径-->next-->finish创建项目

新建好后再次遇到坑

点击file-->settings-->搜索flutter;发现前面配置的flutterSDK路径为空

点击选择flutter SDK路径;重新build

前面还有一个坑;报no devices ;但是你却已经打开了模拟器,并且正常的Android project项目能运行;这时需要执行命令:

在flutter sdk目录输入命令:flutter config --android-sdk 自己的android sdk路径

执行后就会显示你的模拟器了;

如果你已成功科学上网,忽略下面的话;不然,选择Android -->build.gradle文件添加阿里云镜像

flutterSDK-->packages-->flutter_tools-->gtadle-->flutter.gradle文件里同样替换镜像

        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' }
buildscript {
    ext.kotlin_version = '1.3.50'
    repositories {
//        google()
        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' }
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"


    }
}

allprojects {
    repositories {
//        google()
        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' }
    }
}

rootProject.buildDir = '../build'
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {

    afterEvaluate{project->

        if (project.hasProperty("android")) {

            android{
                compileSdkVersion 29

            }

        }

    }

//    project.evaluationDependsOn(':app')
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

添加完镜像后运行报错

查询了一下说是JDK不匹配,把系统JDK替换成自带的就可以了;不过这个方法我没试过;既然不匹配就将gradle降低原本是3.5.0

更改为3.0.0;正常运行了;又多试了几个,3.3.0也可以;至此程序可以正常运行了,不过3.3.0与3.4.0区别需要了解一下,大家可以查询一下

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值