0 Android Studio 與 VS Code 資源消耗對比
1 系統(tǒng)配置要求
為了安裝和運(yùn)行 Flutter,你的開發(fā)環(huán)境必須至少滿足以下要求:
- 操作系統(tǒng):Windows 10 或更高的版本(基于 x86-64 的 64 位操作系統(tǒng))。
- 磁盤空間:除安裝 IDE 和一些工具之外還應(yīng)有至少 2.5 GB 的空間。
- 工具:要讓 Flutter 在你的開發(fā)環(huán)境中正常使用,依賴于以下的工具:
-
- Windows PowerShell 5.0 或者更高的版本(Windows 10 中已預(yù)裝)
-
- Git for Windows 2.x,并且勾選從 Windows 命令提示符使用 Git 選項(xiàng)。
如果 Windows 版的 Git 已經(jīng)安裝過了,那么請確保能從命令提示符或者 PowerShell 中直接執(zhí)行 git 命令。
- Git for Windows 2.x,并且勾選從 Windows 命令提示符使用 Git 選項(xiàng)。
2 Flutter SDK
2.1 獲取 Flutter SDK
https://flutter.cn/docs/release/archive?tab=windows
選擇 flutter_windows 3.16.8-stable.zip
2.2 解壓
將壓縮包解壓,然后把其中的 flutter 目錄整個(gè)放在你想放置 Flutter SDK 的路徑中。
2.3 更新 path 環(huán)境變量
在開始菜單的搜索功能鍵入「env」,然后選擇 編輯系統(tǒng)環(huán)境變量。
Dart SDK 要兼容 Flutter SDK
Flutter SDK 在 flutter 命令腳本的同級目錄下增加了 dart 命令,你可以更方便地運(yùn)行 Dart 命令行程序。下載 Flutter SDK 時(shí)也會下載對應(yīng)版本的 Dart SDK,但如果你單獨(dú)下載了 Dart SDK,請確保 Flutter SDK 內(nèi)的 dart 在你的環(huán)境變量中排在首位,因?yàn)閱为?dú)的 SDK 可能并不兼容 Flutter SDK。下面的命令展示了 flutter 和 dart 是否來自相同的 bin 目錄,并且是否可以兼容使用。
where flutter dart
雙擊 flutter_console.bat 輸入 flutter doctor 檢測環(huán)境
3 VS code 與插件
3.1 安裝 VS code
3.2 安裝 flutter 插件
flutter插件安裝成功后應(yīng)該會自動(dòng)安裝dart插件
3.3 查看 flutter 項(xiàng)目
快捷菜單查看 flutter 項(xiàng)目
4 Java 環(huán)境
Flutter開發(fā)需要有Java的支持。
4.1 JDK 版本
- JDK 1.0(1996年1月23日發(fā)布)
- JDK 1.1(1997年2月19日發(fā)布)
- JDK 1.2(1998年12月8日發(fā)布)
- JDK 1.3(2000年5月8日發(fā)布)
- JDK 1.4(2002年2月6日發(fā)布)
- JDK 5.0(2004年9月30日發(fā)布)
- JDK 6(2006年12月11日發(fā)布)
- JDK 7(2011年7月28日發(fā)布)
- JDK 8(2014年3月18日發(fā)布)
- JDK 9(2017年9月21日發(fā)布)
- JDK 10(2018年3月20日發(fā)布)
- JDK 11(2018年9月25日發(fā)布)
- JDK 12(2019年3月19日發(fā)布)
- JDK 13(2019年9月17日發(fā)布)
- JDK 14(2020年3月17日發(fā)布)
- JDK 15(2020年9月15日發(fā)布)
- JDK 16(2021年3月16日發(fā)布)
- JDK 17(2021年9月發(fā)布)
- JDK 18(2022年3月發(fā)布)
- JDK 19(2022年9月發(fā)布)
- JDK 20(2023年3月發(fā)布)
- JDK 21(2023年9月發(fā)布)
4.2 下載
https://www.oracle.com/java/technologies/downloads/#jdk21-windows
JDK21 【放棄,Android SDK Tools r24.4.1 不兼容該版本?】
JDK17
4.3 安裝 & 環(huán)境配置
JDK21下載+安裝+環(huán)境配置教程(Windows系統(tǒng))
4.4 查看版本
java -version
4.5 測試
welcome.java
public class Welcome {
public static void main(String[] args) {
System.out.println("Hello world!");
}
}
java welcome.java
5 Android 環(huán)境 SDK 【體積大】【如下嘗試都失敗,借用Android Studio來安裝】
5.1 exe安裝失敗,放棄 【JDK21】
https://www.androiddevtools.cn/
5.1 exe安裝成功 【JDK17】
選項(xiàng)
安裝
如下報(bào)錯(cuò),處理:【放棄】
Downloading Google Play lntel x86 Atom 64 System lmage, Android API R, revision 2Download finished with wrong size. Expected 1313831742 bytes, got 1313824374 bytes.
(1) 相應(yīng)壓縮包已經(jīng)下載到本地,找到壓縮包
(2) Android\android-sdk\temp
(3) 解壓到當(dāng)前目錄
也失敗
離線安裝【暫不安裝】
Android System Image - Google API PlayStores Intel Atom x86 System Images Direct Download
根據(jù)提供的路徑下載安裝包到本地
Google SDK 分析
Google API intel x86 atom and Google Play intel x86 atom sytem image
Google API Intel x86 Atom System Image 是用于開發(fā)和測試的,它包含了 Android 操作系統(tǒng)的核心功能和 API,但不包含 Google Play 商店或?qū)S袘?yīng)用程序。這意味著使用這個(gè)系統(tǒng)映像,你可以在模擬器上運(yùn)行和測試自己的應(yīng)用程序,但無法直接訪問 Google Play 商店來安裝其他應(yīng)用程序。
而 Google Play Intel x86 Atom System Image 則包含了 Google Play 商店和專有應(yīng)用程序,這使得你可以在模擬器上模擬完整的 Android 設(shè)備體驗(yàn),包括訪問 Google Play 商店和應(yīng)用商店。但是,這個(gè)系統(tǒng)映像的使用有一些限制,例如沒有 root 訪問權(quán)限,并且主要用于生產(chǎn)和測試目的,而不是用于開發(fā)。
5.2 解壓安裝,半成功 【JDK21】【放棄】
【Android】SDK安裝及配置
- 解壓后雙擊運(yùn)行SDK Manager.exe
- 如果閃退,如下操作
【Android】SDK Manager打開閃退問題
rem Check we have a valid Java.exe in the path.
set java_exe=E:\Java\jdk-21\bin\java.exe
- 選項(xiàng)
一般根據(jù)默認(rèn)推薦安裝即可。如果自選,必選項(xiàng): -
- Android SDK Tools:基礎(chǔ)工具包,版本號帶rc字樣的是預(yù)覽版。
-
- Android SDK Platform-tools:從android2.3開始劃出此目錄,存放公用開發(fā)工具,比如adb、sqlite3等,被劃分到了這里。
-
- Android SDK Build-tools:Android項(xiàng)目構(gòu)建工具。
-
- SDK Platform:對應(yīng)平臺的開發(fā)工具,需要下載Android xxx(API xx)的版本里面已經(jīng)包含了。
-
- Android xxx(API xx) :可選的各平臺開發(fā)工具,一般選擇最新版本即可。
下載失敗
6 安裝 Android Studio
Flutter 依賴 Android Studio 的全量安裝來為其提供 Android 平臺的支持 包括Android SDK。
6.1 下載地址
https://developer.android.google.cn/studio?hl=zh-cn
【2023最新】Android Studio + JDK11安裝配置一條龍
以管理員權(quán)限安裝,否則報(bào)錯(cuò)如下:
6.2 Android Studio 中 Android SDK 下載如下4個(gè) SDK Tools
- Android SDK Build-Tools
- Android SDK Command-line Tools
- Android SDK Platform-Tools
- Android sDK Tools
防止出現(xiàn)如下類似報(bào)錯(cuò):
? cmdline-tools component is missing
Run `path/to/sdkmanager --install "cmdline-tools;latest"`
6.3 為 flutter 配置 Android SDK 目錄 【flutter doctor】
flutter config --android-sdk “E:\Android\Android SDK”
6.4 Android 許可證狀態(tài)
運(yùn)行以下命令以接受Android SDK的許可證:
flutter doctor --android-licenses
配置成功如下
幾個(gè)常見問題
幾個(gè)Flutter常見診斷錯(cuò)誤與解決Android toolchain - develop for Android devices X Unable to locate Android SDK
7 下載模擬器 并 配置 [主機(jī)中安裝,虛擬機(jī)中安裝太卡]
7.1 模擬器對比
7.2 模擬器下載安裝
7.3 配置模擬器 【同一系統(tǒng)內(nèi)】
管理員權(quán)限打開 cmd,然后進(jìn)入夜神模擬器目錄,輸入如下命令:
nox_adb.exe connect 127.0.0.1:62001
如下報(bào)錯(cuò),原因是模擬器沒有運(yùn)行:
unable to connect to 127.0.0.1:62001: cannot connect to 127.0.0.1:62001: 由于目標(biāo)計(jì)算機(jī)積極拒絕,無法連接。 (10061)
7.3 配置模擬器 【虛擬機(jī) + 主機(jī)】
網(wǎng)絡(luò)設(shè)置介紹
NAT轉(zhuǎn)換:大部分虛擬機(jī)默認(rèn)的 NAT 轉(zhuǎn)換,虛擬機(jī)能 ping 通主機(jī)(如果主機(jī)防火墻沒問題),但是,主機(jī) ping 不通虛擬機(jī)。
橋接網(wǎng)卡:主機(jī)與虛擬機(jī)能互相 ping 通,虛擬機(jī)不能聯(lián)網(wǎng)。
網(wǎng)卡1:選擇橋接網(wǎng)卡;
網(wǎng)卡2:選擇nat轉(zhuǎn)換;
虛擬機(jī)中配置正確的ip地址(與你主機(jī)同一子網(wǎng))。
VMware虛擬機(jī)網(wǎng)絡(luò)設(shè)置
網(wǎng)絡(luò)設(shè)置
虛擬機(jī)的網(wǎng)絡(luò)模式是NAT模式,且NAT模式的網(wǎng)卡是VMnet8
w10 虛擬機(jī)默認(rèn)自動(dòng)獲取IP
也可以自定義IP
注意:關(guān)閉 win10 虛擬機(jī)中的防火墻
關(guān)閉防火墻后,主機(jī)才能 ping 通虛擬機(jī)。
VMware虛擬機(jī)上通過adb連接物理機(jī)上的Android模擬器 【端口轉(zhuǎn)發(fā)】
VMware虛擬機(jī)上通過adb連接物理機(jī)上的Android模擬器
在主機(jī) Windows 以管理員身份運(yùn)行cmd,然后執(zhí)行命令
netsh interface portproxy add v4tov4 listenport=16666 listenaddress=0.0.0.0 connectport=62001 connectaddress=127.0.0.1
listenport: 是自己設(shè)定一個(gè)端口,可以設(shè)定為 16666 ,也可以設(shè)成別的;
listenaddress: 是虛擬機(jī)的ip,如果你不只一臺虛擬機(jī)有這個(gè)需求,這里也可以設(shè)成0.0.0.0,監(jiān)聽所有ip地址向 16666 端口的訪問;
connectport: 是原來在Windows連Android模擬器的端口;
connectaddress: 如果你的模擬器就在windows本地開的就127.0.0.1,當(dāng)然如果想遠(yuǎn)程連另一臺電腦上的,可以改成另一臺電腦的ip,同樣在那臺電腦上也要做端口轉(zhuǎn)發(fā);
然后就可以在虛擬機(jī)上通過adb連模擬器(ip是主機(jī),注意這里端口是自定義的 16666 ,不是模擬器原來的21503)
nox_adb.exe connect 192.168.4.63:16666
最后,如果想要?jiǎng)h除轉(zhuǎn)發(fā)規(guī)則,執(zhí)行命令
netsh interface portproxy delete v4tov4 listenaddress=0.0.0.0 listenport=16666
8 示例
8.1 創(chuàng)建 Demo 工程
同時(shí)按下ctrl + shift + p 輸入flutter
選擇new Project
8.2 啟動(dòng)模擬器
在主機(jī) Windows 以管理員身份運(yùn)行cmd,然后執(zhí)行命令
netsh interface portproxy add v4tov4 listenport=16666 listenaddress=0.0.0.0 connectport=62001 connectaddress=127.0.0.1
listenport: 是自己設(shè)定一個(gè)端口,可以設(shè)定為 16666 ,也可以設(shè)成別的;
listenaddress: 是虛擬機(jī)的ip,如果你不只一臺虛擬機(jī)有這個(gè)需求,這里也可以設(shè)成0.0.0.0,監(jiān)聽所有ip地址向 16666 端口的訪問;
connectport: 是原來在Windows連Android模擬器的端口;
connectaddress: 如果你的模擬器就在windows本地開的就127.0.0.1,當(dāng)然如果想遠(yuǎn)程連另一臺電腦上的,可以改成另一臺電腦的ip,同樣在那臺電腦上也要做端口轉(zhuǎn)發(fā);
然后就可以在虛擬機(jī)上通過adb連模擬器(ip是主機(jī),注意這里端口是自定義的 16666 ,不是模擬器原來的21503)
nox_adb.exe connect 192.168.4.63:16666
最后,如果想要?jiǎng)h除轉(zhuǎn)發(fā)規(guī)則,執(zhí)行命令
netsh interface portproxy delete v4tov4 listenaddress=0.0.0.0 listenport=16666
8.3 運(yùn)行 flutter 項(xiàng)目
可以直接在控制臺輸入 flutter run,就可以在夜神模擬器打開app
如果需要熱更新,則可以點(diǎn)擊右上角debug
8.4 debug版本 在夜神模擬器中運(yùn)行
8.5 release版本 在手機(jī)中運(yùn)行【Android】
release包體積較debug包小很多
android 打包命令: flutter build apk
ios 打包命令: flutter build ios --release
在目錄下找到apk,然后下載到手機(jī)中安裝就行。
其他
flutter 手機(jī)架構(gòu)問題
https://blog.csdn.net/weixin_44911775/article/details/132306275
方案一:只適配armeabi
優(yōu)點(diǎn):基本上適配了全部CPU架構(gòu)(除了淘汰的mips和mips_64)
缺點(diǎn):性能低,相當(dāng)于在絕大多數(shù)手機(jī)上都是需要輔助ABI或動(dòng)態(tài)轉(zhuǎn)碼來兼容
方案二:只適配 armeabi-v7a
同理方案一,只是又篩掉了一部分老舊設(shè)備,在性能和兼容二者中比較平衡
方案三: 只適配 arm64-v8
優(yōu)點(diǎn): 性能最佳
缺點(diǎn): 只能運(yùn)行在arm64-v8上,要放棄部分老舊設(shè)備用戶
這三種方案都是可以的,現(xiàn)在的大廠APP適配中,這三種都有,大部分是前2種方案。具體選哪一種就看自己的考量了,以性能換兼容就arm64-v8,以兼容換性能armeabi,二者稍微平衡一點(diǎn)的就armeabi-v7a。
目前來說,大多數(shù)的大廠APP用的都是armeabi或armeabi-v7a。
flutter 安裝包體積過大,包體積優(yōu)化策略
https://www.jianshu.com/p/6cc7c8190c02文章來源:http://www.zghlxwxcb.cn/news/detail-856350.html
參考
1、在 Windows 操作系統(tǒng)上安裝和配置 Flutter 開發(fā)環(huán)境
2、1.3 搭建Flutter開發(fā)環(huán)境
3、Flutter入門教程(三) 教你如何實(shí)現(xiàn)VSCode高效開發(fā)
4、JDK21下載+安裝+環(huán)境配置教程(Windows系統(tǒng))
5、【Android】SDK安裝及配置
6、【Android】SDK Manager打開閃退問題
7、AndroidSDK安裝配置(Windows)
8、Android System Image - Google API PlayStores Intel Atom x86 System Images Direct Download
9、Android SDK與Android模擬器安裝
10、VSCode配置Flutter模擬器
11、Android SDK 地址,全
12、Android開發(fā)者必備工具-常見Android模擬器(MuMu、夜神、藍(lán)疊、逍遙、雷電、Genymotion…)
13、good–windows+vscode+夜神模擬器 flutter環(huán)境配置
14、cmdline-tools component is missing文章來源地址http://www.zghlxwxcb.cn/news/detail-856350.html
到了這里,關(guān)于Flutter環(huán)境搭建【win10虛擬機(jī)】+夜神模擬器【主機(jī)】的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!