赞
踩
在开始Flutter开发之前请先参考我的前两篇文章搭建开发环境。
在这过程中所踩的坑:
其实Flutter刚出来我就开始用它开发过App,之后有一段时间没用。
最近打算重新开始,发现Android Studio更新到4了。
更新之后,就出现了很多问题。
首先,flutter doctor会认为android有问题,这个可以通过修改环境变量来解决,之前用的环境变量名是ANDROID_HOME,现在是ANDROID_SDK_ROOT。
其次是cocopods问题,虽然检测出问题,但是实际上毫无影响。
然后就是plugin问题,检测不到flutter插件和dart插件,但实际上是安装了。
新建工程还是很慢,这个可以通过修改环境变量来解决。
还可以修改flutter的设置,取消分析会快一些。
- export PUB_HOSTED_URL=https://pub.flutter-io.cn
- export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
- flutter config --no-analytics
新建工程之后,我发现没有android模拟器可以选择,但是AVD里是有的。
运行android模拟器之后,出现了一个提示 unable to locate adb。
网上有很多解决办法,比如寻找是否有占用端口,更新sdk等等。
根据我的经验,都没有重新安装Android Studio来的快。
不过在MAC里重新安装的时候要注意一件事情,需要将安装在用户文件夹中的AndroidStudio4.1一起删除。
以下是MAC中AndroidStudio4.1在用户文件夹的目录
/Users/user/Library/Application Support/Google/AndroidStudio4.1
如果不删除的话,你会发现重新安装以后所有的设置以及插件都跟以前一样。
在ios中调试很简单很顺利,但是android就遇到了问题。
首先gradle下载非常慢,导致编译过程一直在等待。
要解决这个问题可以自己下载gradle放在这个文件夹中。
/Users/user/.gradle/wrapper/dists/gradle-5.6.2-all/9st6wgf78h16so49nn74lgtbb
最后这个9st6wgf78h16so49nn74lgtbb可能是随机生成的吧,Windows用户在自己的用户文件夹里应该也能找到.gradle文件夹。
最后就是maven,因为如果用默认的地址,在国内肯定是不行或者很慢的。所以需要修改如下文件:
flutterSDK_PATH/packages/flutter_tools/gradle/flutter.gradle
- uildscript {
- repositories {
- //google()
- //jcenter()
- 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.5.0'
- }
- }android {
- compileOptions {
- sourceCompatibility 1.8
- targetCompatibility 1.8
- }
- }
- apply plugin: FlutterPlugin
- class FlutterPlugin implements Plugin<Project> {
- // private static final String DEFAULT_MAVEN_HOST = "https://storage.googleapis.com";
- private static final String DEFAULT_MAVEN_HOST = "https://storage.flutter-io.cn/download.flutter.io";

flutterSDK_PATH/packages/flutter_tools/gradle/resolve_dependencies.gradle
- repositories {
- google()
- jcenter()
- maven {
- //url "$storageUrl/download.flutter.io"
- url "http://download.flutter.io"
- }
- }
flutter PROJECT_PATH/android/build.gradle
- buildscript {
- ext.kotlin_version = '1.3.50'
- repositories {
- // google()
- //jcenter()
- 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.5.0'
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- }
- }
-
-
- allprojects {
- repositories {
- // google()
- // jcenter()
- 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' }
- maven { url "https://storage.googleapis.com/download.flutter.io" }
- }
- }

根据我的经验,build.gradle中的 maven { url "https://storage.googleapis.com/download.flutter.io" }十分重要,没有的话,编译一定失败,应该还需要VPN的加持
第一步,打开Android Studio。
在已经配置好的Android Studio里,你可以找到Start a new Flutter project的选项。
第二步,新建一个Flutter工程。
选择第一个Flutter Application
输入合适的工程名,点击next。
输入package name,点击Finish。
这样一个新Flutter工程就新建好了。
从target里选择ios或者android的模拟器来运行程序。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。