Flutter安裝


TOC

Flutter安裝

  • 操作系統: windows7以上64位操作系統
  • 磁盤空間:大於3G,最好可以達到5G
  • 安裝java
  • 安裝flutter sdk
  • 虛擬機

安裝flutterSDK

安裝

https://github.com/flutter/flutter.git
國內鏡像地址:
https://mirrors.tuna.tsinghua.edu.cn/git/flutter-sdk.git
碼雲https://gitee.com/mirrors/Flutter的:https://gitee.com/mirrors/Flutter.git

建議:
使用碼雲的git
使用分支:stable

配置環境變量

  • path:將flutter的bin地址添加到環境變量的path中;
  • 添加flutter鏡像等配置FLUTTER_STORAGE_BASE_URLPUB_HOSTED_URL;

中國庫

FLUTTER_STORAGE_BASE_URL:https://storage.flutte-io.cn
PUB_HOSTED_URL:https://pub.flutter-io.cn

清華

PUB_HOSTED_URL:https://mirrors.tuna.tsinghua.edu.cn/dart-pub
FLUTTER_STORAGE_BASE_URL:https://mirrors.tuna.tsinghua.edu.cn/flutter

上海交通大學

FLUTTER_STORAGE_BASE_URL:https://mirrors.sjtug.sjtu.edu.cn
PUB_HOSTED_URL:https://dart-pub.mirrors.sjtug.sjtu.edu.cn

我最終選擇的是

PUB_HOSTED_URL:https://pub.flutter-io.cn
FLUTTER_STORAGE_BASE_URL:https://mirrors.sjtug.sjtu.edu.c

安裝配置

  • 雙擊運行安裝路徑/bin/flutter.bat
  • 運行檢查
flutter doctor
  • 沒有X之后運行
flutter doctor --android-licenses

一直輸入y,完成配置

  • 修改鏡像:flutter\packages\flutter_tools\gradle\flutter.gradle
buildscript {
    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" }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.5.0'
    }
}

每一個項目配置

buildscript {
    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" }
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.5.0'  //這個版本號看自己的配置
    }
}

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" }
    }
}

升級flutter

升級

  • 方法1:flutter upgrade
  • 方法2:刪除舊的sdk,重新下載

配置

  • 雙擊運行安裝路徑/bin/flutter.bat
  • 運行檢查
flutter doctor

注意:flutter升級之后,有的項目就無法正常運行了,建議在項目根目錄使用flutter clean清除配置,然后使用flutter pub get重新配置一下

vscode搭建環境

安裝Dart/Flutter/Flutter Widget Snippets /Awesome Flutter Snippets/Android ios Emulator插件;

vscode創建項目

進入需要創建項目的文件夾

運行

flutter create 項目名

(可能需要安裝cmake)

運行

普通運行

使用vscode打開項目文件夾,在終端輸入flutter run,這種模式不能熱加載,需要在命令行輸入相應字符才能操作

操作
R:重啟並熱加載
r:熱加載
h:幫助
d:分離
q:退出
p:顯示網格,這個可以很好的掌握布局情況,工作中很有用。
o:切換android和ios的預覽模式。
q:退出調試預覽模式。

熱加載debugger

左側選擇debugger的中的運行即可.

連接第三方模擬器

第三方模擬器需要開啟root權限,若是有usb調試選項,也要開啟

cmd進入Android sdk的platform-tools文件夾,運行adb連接代碼

夜神模擬器:adb connect 127.0.0.1:62001

逍遙安卓模擬器:adb connect 127.0.0.1:21503

天天模擬器:adb connect 127.0.0.1:6555

海馬玩模擬器:adb connect 127.0.0.1:53001

網易MUMU模擬器:adb connect 127.0.0.1:7555

原生模擬器:adb connect (你的IP地址):5555

mumu:adb connect 127.0.0.1:7555

異常

啟動異常Initialization gradle…

如果啟動過程中一直卡在 Initialization gradle…

那就去gradle官網下載他的zip壓縮包 然后放在.gradle\wrapper\dists\gradle-4.10.2-all\9fahxiiecdb76a5g3aw9oi8rv下 把其他文件刪除
gradle的版本要對應好

adb 提示adb server version(31) doesn't match this client(40)

adb的版本沖突問題,

  1. 將AndroidSDK的platform-toolscmdline-toolsbuild-tools路徑添加到path中,重啟虛擬機(重連手機),重啟Android SDK軟件(最好重啟軟件),測試一下;
  2. 若是還有問題,可能是電腦之前安裝過adb的服務,打開windows管理工具中的服務,看看有沒有adb的,把這個服務停止(最好禁用了,不然每次都要停止一下),測試一下;
  3. 可能是端口沖突,這是因為你的電腦安裝了,魯大師手機助手,360手機助手占用了adb的端口引起的。
    1. cmd輸入netstat -ano|findstr “5037”,去查找5037對應的端口號的進程id 也就是pid。如果有相應的pid,就證明此端口5037有程序占用了

      1586002659137

    2. 輸入tasklist |findstr “15828”,看到占用端口的軟件,去吧這個軟件停了
      1. 任務管理器的詳細信息可以看到,右鍵結束即可(可以按照名字查找或者在表頭右鍵顯示pid,找到對應pid的程序);
      2. 使用代碼強制結束:taskkill /pid 15828 -t -f

      1586002696708

flutter安裝dart失敗:

打開flutter目錄\bin\internal
打開engine.version
下載文件

https://mirrors.sjtug.sjtu.edu.cn/flutter_infra/flutter/文件內容/dart-sdk-darwin-x64.zip

下載的dart文件,解壓,添加bin目錄到path環境變量

添加環境變量FLUTTER_STORAGE_BASE_URL,值為https://mirrors.tuna.tsinghua.edu.cn(注意不要有后面的\flutter)

Could not resolve io.flutter:flutter_embedding_debug:1.0.0-6bc433c6b6b5b98dcf4cc11aff31cdee90849f32


進入flutter\packages\flutter_tools\gradle 目錄下

  • aar_init_script.gradle
  • resolve_dependencies.gradle
  • flutter.gradle
將http://download.flutter.io 替換為: https://storage.googleapis.com/download.flutter.io

將
google()
jcenter()
替換為:
// 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" }

下載包失敗:Could not resolve all artifacts for configuration....

flutter在下載依賴失敗或者flutter run運行的時候出現某個jar或者文件下載失敗的時候,如下:

FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':url_launcher'.
> Could not resolve all artifacts for configuration ':url_launcher:classpath'.
   > Could not download kotlin-reflect.jar (org.jetbrains.kotlin:kotlin-reflect:1.3.31)
      > Could not get resource 'https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-reflect/1.3.31/kotlin-reflect-1.3.31.jar'.
         > Could not GET 'https://d29vzk4ow07wi7.cloudfront.net/a0172daf57e511e8e0df9251b508db8aa6b885cdf0c5849addc9b840db4814f0?response-content-disposition=attachment%3Bfilename%3D%22kotlin-reflect-1.3.31.jar%22&Policy=eyJTdGF0ZW1lbnQiOiBbeyJSZXNvdXJjZSI6Imh0dHAqOi8vZDI5dnprNG93MDd3aTcuY2xvdWRmcm9udC5uZXQvYTAxNzJkYWY1N2U1MTFlOGUwZGY5MjUxYjUwOGRiOGFhNmI4ODVjZGYwYzU4NDlhZGRjOWI4NDBkYjQ4MTRmMD9yZXNwb25zZS1jb250ZW50LWRpc3Bvc2l0aW9uPWF0dGFjaG1lbnQlM0JmaWxlbmFtZSUzRCUyMmtvdGxpbi1yZWZsZWN0LTEuMy4zMS5qYXIlMjIiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE1ODYyNTYzNDF9LCJJcEFkZHJlc3MiOnsiQVdTOlNvdXJjZUlwIjoiMC4wLjAuMC8wIn19fV19&Signature=g7IpNFZ30ml7BofrDRqxvVTOidUqrfYgiNEb4ykjpCzmiRKMLPNV19Zy09LSxB5zwo2bYkmGNyvVqBKiYL26uuTtFER5t5Z7YcQPfmb220WviYE~3fuSMLA84FAPTwweRwEO1ZXHWmMupgMO41ao6XfCzd9zSEzPC5o5yWXne4GZSPShEVmgHOg8nhL5G8WD5nUOQNxu9VeO7npIRzU5d6XkrB~pSPKkMkRNisl0LcxjuljT6FKbGtfnhm2uYvpGVNaDvIeff3Qp9Bx3gdmxBH6-AbzS-GxVf1xIBtzzoBqUyq6raz27mL8TIX7mROGomvOV0z5MhlRnG1Kl21UVIw__&Key-Pair-Id=APKAIFKFWOMXM2UMTSFA'.
            > d29vzk4ow07wi7.cloudfront.net
   > Could not download kotlin-stdlib.jar (org.jetbrains.kotlin:kotlin-stdlib:1.3.31)
      > Could not get resource 'https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib/1.3.31/kotlin-stdlib-1.3.31.jar'.
         > Could not GET 'https://d29vzk4ow07wi7.cloudfront.net/f38c84326543e66ed4895b20fb3ea0fca527fd5a040e1f49d0946ecf3d2b3b23?response-content-disposition=attachment%3Bfilename%3D%22kotlin-stdlib-1.3.31.jar%22&Policy=eyJTdGF0ZW1lbnQiOiBbeyJSZXNvdXJjZSI6Imh0dHAqOi8vZDI5dnprNG93MDd3aTcuY2xvdWRmcm9udC5uZXQvZjM4Yzg0MzI2NTQzZTY2ZWQ0ODk1YjIwZmIzZWEwZmNhNTI3ZmQ1YTA0MGUxZjQ5ZDA5NDZlY2YzZDJiM2IyMz9yZXNwb25zZS1jb250ZW50LWRpc3Bvc2l0aW9uPWF0dGFjaG1lbnQlM0JmaWxlbmFtZSUzRCUyMmtvdGxpbi1zdGRsaWItMS4zLjMxLmphciUyMiIsIkNvbmRpdGlvbiI6eyJEYXRlTGVzc1RoYW4iOnsiQVdTOkVwb2NoVGltZSI6MTU4NjI1NjM5MX0sIklwQWRkcmVzcyI6eyJBV1M6U291cmNlSXAiOiIwLjAuMC4wLzAifX19XX0_&Signature=MgenmHLDSO66gc2YAaf1l6L9eQjg9xBAKROmoMwEP9-FUACk9uUXgD6CS~2uj1jAlKUFap88Uo50C5z47EAirrxFeQnjrkrQ2epdPGVCYlWJ~lF9IJShpYJpOifd27MwWUFZQpKq1OT5Ahn0eCFWMoZLasji1rg~indBd3nwqfu4ewXZVpkZhsna~bDkSolIHQ3CVAYbsdkOxsHQEFx92WQNGdgj-AMjoC5JoTitlXNPqgMrh4QQ4PwKsdOaXPleSna7~kCmbl7iFPlCRBtGQKYb87pvgpIOM09rX4DpMYGXew47dZLeML0fAHdb2AQ2SYI3LASEGC            > d29vzk4ow07wi7.cloudfront.net
   > Could not get unknown property 'android' for project ':url_launcher' of type org.gradle.api.Project.
   > Could not find method implementation() for arguments [project ':url_launcher_web'] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.
   > Could not find method implementation() for arguments [project ':url_launcher_macos'] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org

解決方法:將鏡像依賴下載地址改為國內地址
```shell

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" }
google()
jcenter()
````
需要修改的位置:

  • 當前項目:android/build.gradle
  • fluttersdk:flutter安裝位置\packages\flutter_tools\gradle里的flutter.gradleresolve_dependencies.gradle
  • 下載失敗的鏡像(比如上面的是url_launcher):在flutter安裝位置\.pub-cache\hosted\當前倉庫\android\build.gradle

注意:上面的配置有的文件中有一處,有的有兩處






免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM