Flutter 即學即用系列博客——02 一個純 Flutter Demo 說明

来源:https://www.cnblogs.com/nesger/archive/2019/02/13/10371529.html
-Advertisement-
Play Games

前言 上一篇文章我們搭建好了 Flutter 的開發環境。 "Flutter 即學即用——01 環境搭建" 這一篇我們通過 Flutter 的一個 Demo 來瞭解下 Flutter。 開發系統:MAC IDE:Android Studio 目錄 1. 創建一個 Flutter 項目 第一步:主界面 ...


前言

上一篇文章我們搭建好了 Flutter 的開發環境。
Flutter 即學即用——01 環境搭建

這一篇我們通過 Flutter 的一個 Demo 來瞭解下 Flutter。

開發系統:MAC
IDE:Android Studio

目錄

1. 創建一個 Flutter 項目

第一步:主界面點擊創建 Flutter 項目
第一步:主界面點擊創建 Flutter 項目
第一步:如果已經打開項目,則通過 File->New->New Flutter Project... 創建
第一步:如果已經打開項目,則通過 File->New->New Flutter Project... 創建
第二步:預設選擇 Flutter Application 即可,點擊 Next
第二步:預設選擇 Flutter Application 即可,點擊 Next
第三步:確定項目名稱,這裡預設即可,點擊 Next
第三步:確定項目名稱,這裡預設即可,點擊 Next
第四步:修改包名,推薦使用功能變數名稱倒過來,修改好之後點擊 Finish 就創建了
第四步:修改包名,推薦使用功能變數名稱倒過來,修改好之後點擊 Finish 就創建了

到此項目基本就創建完成了。

2. 運行項目

2.1 點擊 IDE 運行按鈕運行

依次表示 flutter 要安裝的設備,啟動的 flutter 頁面,以及運行按鈕。

點擊運行按鈕之後可以看到設備上面顯示如下界面:

2.2 執行 flutter run 命令行運行

在 terminal 執行 flutter run 即可在對應設備運行 app。
如果有多個設備,terminal 會有提示。

從上面控制台的提示信息可以知道:

如果要每個設備都安裝,執行 flutter run -d all
如果指定設備安裝,執行 flutter run -d deviceId

Example:
如果只安裝到三星手機 SM G9350,執行命令

flutter run -d c23b810e

即可。deviceId 就是對應設備第二列所顯示的字元串。

3. 修改項目體會熱重載功能

3.1 IDE 運行熱重載功能體現

預設執行的結果

我們可以看到文件 main.dart 裡面有如下代碼

我們將這裡面的 Flutter Demo Home Page 改為 My Home Page。
然後按 command+s 進行保存。
這時控制台會自動列印熱重載信息。
同時設備會自動更新如下:

3.2 命令行運行熱重載功能體現

通過 flutter run 運行的 flutter 項目。控制台會有下麵提示:

上面說了要熱重載改變按 r 鍵,要熱重啟,按 R 鍵。

接著上面的例子,我們修改 My Home Page 為 Run Page。
保存之後按 r 鍵。

可以看到控制台有熱重載信息列印並且界面已經更新了。

4. 後記

雖然是重新記錄,但是因為是在一臺新設備上面操作。而且用的是 mac air,所以遇到各種坑。其中一個是由於網路原因導致每次運行都要下載 gradle 版本因此耗時巨大。比如下圖:

跑一個 Hello World 的 Android 項目要 15 分鐘

後面修改為本地 gradle。就好多了。

在同步或者下載 gradle 的時候,有時候可能需要等待很久。不建議直接點擊 sync now,因為 gradle 一般都幾百 M,如果網路不好,尤其使用手機熱點的時候,會下載很久,而除了時間在增多,沒有其他反饋。但是通過命令行 ./gradlew clean./gradlew assemble 可以看到下載 gradle 的時候會有一些白色的小圓點表示在下載中,有反饋,交互會好些。

另外可能另一種方式是直接瀏覽器下載下來壓縮包,然後放到電腦對應位置。這個也是可以的。這邊網上也有找了一下,不過文章位置說的是放到目的地,其實應該放在原始位置,讓 IDE 去 unzip 到目的地。至少這邊放到目的地 IDE 還是去重新下載了。而且下載後提示壓縮包錯誤,估計是下載不完全或者其他的,這邊就把之前單獨下載的壓縮包替換了一下,然後再運行就可以了。

這邊的位置是/Users/nesger/.gradle/wrapper/dists/gradle-4.10.2-all/9fahxiiecdb76a5g3aw9oi8rv/,我把壓縮包扔到這個裡面再執行 gradlew 命令就可以了。打開/Users/nesger/.gradle/wrapper/dists/可以看到各個 gradle 版本。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 大家可能使用Navicat Premium時發現很方便,比如複製表或數據結構等,其實這種複製表數據或結構方法就是create table as 和create table like 這種方式實現細心的朋友會問,他們有啥區別呢?。。。廢話不多說,直入正題:比如這裡有張表數據t1: 註意上面有索引: C ...
  • 一、查看所有表的行數select a.name as '表名',b.rows as '表數據行數'from sysobjects a inner join sysindexes bon a.id = b.idwhere a.type = 'u'and b.indid in (0,1)--and a. ...
  • [20190212]刪除tab$記錄的恢復3.txt--//春節前幾天做了刪除tan$記錄的測試,鏈接:http://blog.itpub.net/267265/viewspace-2565245/=> [20190130]刪除tab$記錄的恢復.txthttp://blog.itpub.net/2 ...
  • [20190130]刪除tab$記錄的恢復2.txt--//前面鏈接寫好了腳本,開始測試刪除後的恢復.千萬不要在生產系統做這樣的測試!!--//參考鏈接:http://blog.itpub.net/267265/viewspace-2565245/=>[20190130]刪除tab$記錄的恢復.tx ...
  • [20190130]刪除tab$記錄的恢復.txt--//網上提到許多刪除tab$的案例,主要原因在於沒有從官方正規渠道下載oracle版本,還有一些來自工具裡面帶有一些腳本刪除tab$記錄.--//首先我並不知道許多人的恢復方法,僅僅簡單提到恢複數據字典,我想到既然是刪除,反向的操作就是恢復.也就 ...
  • 創建項目 使用Xamarin開發安卓項目,首先需要安裝VS2017以上版本。因為VS2017以上的版本,可以直接創建Xamarin項目。 另外用Xamarin開發安卓項目,還需要使用Intel的CPU,並且得是雙核以上的CPU,因為調試時,需要使用電腦的虛擬化,奔騰4之類的CPU是不支持虛擬化的。 ...
  • 一、Android 個人手機通訊錄開發 數據存儲:SQLite 資料庫 開發工具:Android Studio 二、Phone Module 簡介 1. 界面展示 2. 文件結構簡單分析 三、個人手機通訊錄代碼實現 1. 清單文件 (AndroidManifest.xml) 2. MainActiv ...
  • 一、前言 現如今 Android 領域流行的網路請求框架基本都是用 Retrofit 加 RxJava 來搭配構建的,而以 ViewModel + LiveData + Retrofit + RxJava 來構建請求框架的例子要相對少得多。而本文就是以這四者作為基礎組件,介紹如何一步步封裝實現自己的 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...