為您解碼網(wǎng)站建設(shè)的點(diǎn)點(diǎn)滴滴
發(fā)表日期:2018-12 文章編輯:小燈 瀏覽次數(shù):5297
Flutter是谷歌的移動(dòng)UI框架,可以快速在iOS和Android上構(gòu)建高質(zhì)量的原生用戶界面。 Flutter可以與現(xiàn)有的代碼一起工作。在全世界,F(xiàn)lutter正在被越來越多的開發(fā)者和組織使用,并且Flutter是完全免費(fèi)、開源的。
跨平臺(tái):現(xiàn)在Flutter至少可以跨4種平臺(tái),甚至支持嵌入式開發(fā)。我們常用的有Linux、Android、IOS,甚至可以在谷歌最新的操作系統(tǒng)上Fuchsia進(jìn)行運(yùn)行,經(jīng)過第三方擴(kuò)展,甚至可以跑在MacOS和Windows上,到目前為止,F(xiàn)lutter算是支持平臺(tái)最多的框架了,良好的跨平臺(tái)性,直接帶來的好處就是減少開發(fā)成本。
原生用戶界面: 它是原生的,讓我們的體驗(yàn)更好,性能更好。用官方的話講就是平滑而自然的滑動(dòng)效果和平臺(tái)感知,為您的用戶帶來全新的體驗(yàn)。(可以看一下圖片,這是Flutter的表現(xiàn))
開源免費(fèi):這個(gè)不用多說,我們只要學(xué)會(huì)并使用,這些都是免費(fèi)的。這對(duì)于大公司是非常必要的,有人說你可以用破解版什么的....說明你還是小公司,我們公司的軟件全部是正版,就更不用說操作系統(tǒng)和生產(chǎn)環(huán)境了,否則各種公司的侵權(quán)官司你都解決不了。
Cordova:個(gè)人認(rèn)為Flutter可以完勝了,因?yàn)镃ordova還是基于網(wǎng)頁技術(shù)進(jìn)行包裝,利用插件的形式開發(fā)移動(dòng)應(yīng)用的,就這一點(diǎn)。無論是性能還是體驗(yàn),F(xiàn)lutter都可以完勝了。
RN(React Native):RN的效率由于是將View編譯成了原生View,所以效率上要比基于Cordova的HTML5高很多,但是它也有效率問題,RN的渲染機(jī)制是基于前端框架的考慮,復(fù)雜的UI渲染是需要依賴多個(gè)view疊加.比如我們渲染一個(gè)復(fù)雜的ListView,每一個(gè)小的控件,都是一個(gè)native的view,然后相互組合疊加.想想此時(shí)如果我們的list再需要滑動(dòng)刷新,會(huì)有多少個(gè)對(duì)象需要渲染.所以也就有了前面所說的RN的列表方案不友好。
Flutter:吸收了前兩者的教訓(xùn)之后,在渲染技術(shù)上,選擇了自己實(shí)現(xiàn)(GDI),由于有更好的可控性,使用了新的語言Dart,避免了RN的那種通過橋接器與Javascript通訊導(dǎo)致效率低下的問題,所以在性能方面比RN更高一籌;有經(jīng)驗(yàn)的開發(fā)者可以打開Android手機(jī)開發(fā)者選項(xiàng)里面的顯示邊界布局,發(fā)現(xiàn)Flutter的布局是一個(gè)整體.說明Flutter的渲染沒用使用原生控件進(jìn)行渲染。
Flutter采用GPU渲染技術(shù),所以性能極高。
Flutter編寫的應(yīng)用是可以達(dá)到120fps(每秒傳輸幀數(shù)),這也就是說,它完全可以勝任游戲的制作。而我們常說的RN的性能只能達(dá)到60fps,這也算是Flutter的一個(gè)超高競(jìng)爭(zhēng)力吧。官方宣稱Flutter甚至?xí)^原生性能。
如果你想邁入移動(dòng)游戲領(lǐng)域,學(xué)習(xí)Flutter也是一個(gè)非常好的選擇。
github地址
JDK下載及環(huán)境變量配置
下載安裝 FlutterSDK
Android Studio的安裝
打開Android Stuido 軟件,然后找到Plugin的配置,搜索Flutter插件。
安裝Android證書(注意jdk版本問題)
現(xiàn)在需要一個(gè)虛擬機(jī)來運(yùn)行我們的程序,可以點(diǎn)擊Android Studio中的上方菜單tool -AVD Manager選項(xiàng)。
出現(xiàn)新建菜單,選擇Create Virtual Device.....,如果你一個(gè)虛擬機(jī)也沒建過,這個(gè)選項(xiàng)在對(duì)話框的中間(我一定跟我的圖一樣)。
選擇虛擬機(jī)類型,這個(gè)你隨意選就好,我選擇的是Nexus 5x。(如果你屏幕小,就選擇一個(gè)小屏幕的虛擬機(jī))
選擇系統(tǒng),這里盡量選擇最新的,我選擇了Android 9.0系統(tǒng),選擇好后,又是一個(gè)漫長(zhǎng)的等待過程。
安裝好后,點(diǎn)擊開始按鈕,運(yùn)行虛擬機(jī)了(第一次運(yùn)行,需要安裝系統(tǒng),會(huì)慢一些),運(yùn)行起來后,如下圖。
讓Flutter跑起來
第一步:修改掉項(xiàng)目下的android目錄下的build.gradle文件,把google() 和 jcenter()這兩行去掉。改為阿里的鏈接。
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'} } dependencies { classpath 'com.android.tools.build:gradle:3.1.2' } } 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' } } } rootProject.buildDir = '../build' subprojects { project.buildDir = "${rootProject.buildDir}/${project.name}" } subprojects { project.evaluationDependsOn(':app') } task clean(type: Delete) { delete rootProject.buildDir }
第二步:修改Flutter SDK包下的flutter.gradle文件,這個(gè)目錄要根據(jù)你的SDK存放的位置有所變化。比如我放在了D盤Flutter目錄下,那路徑就是這個(gè)。
D:\developer\application\flutter\packages\flutter_tools\gradle
buildscript { repositories { //jcenter() // maven { // url 'https://dl.google.com/dl/android/maven2' // } 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.1.2' } }
然后再重新Debug一下,就基本可以啟動(dòng)起來。
還有一種錯(cuò)誤是說硬件沒有啟動(dòng)GPU,需要下載安裝一個(gè)程序,這個(gè)提示的很清楚,不做過多的介紹了。
我已經(jīng)使用VSCode有幾年了,記得是從剛出VSCode就開始使用了,我個(gè)人是不喜歡用Android Studio來進(jìn)行開發(fā)的,感覺它太重量級(jí)了。所以必須想辦法用VSCode進(jìn)行開發(fā)。幸運(yùn)的是VSCode已經(jīng)有了Flutter插件,而且也非常完美。
VSCode安裝Flutter插件
啟動(dòng)虛擬機(jī)
啟動(dòng) flutter run
熱鍵(debug F5 模式實(shí)時(shí)加載)
r 鍵:點(diǎn)擊后熱加載,也就算是重新加載吧。
p 鍵:顯示網(wǎng)格,這個(gè)可以很好的掌握布局情況,工作中很有用。
o 鍵:切換android和ios的預(yù)覽模式。
q 鍵:退出調(diào)試預(yù)覽模式。
日期:2018-10 瀏覽次數(shù):7271
日期:2018-12 瀏覽次數(shù):4344
日期:2018-07 瀏覽次數(shù):4890
日期:2018-12 瀏覽次數(shù):4186
日期:2018-09 瀏覽次數(shù):5515
日期:2018-12 瀏覽次數(shù):9937
日期:2018-11 瀏覽次數(shù):4822
日期:2018-07 瀏覽次數(shù):4595
日期:2018-05 瀏覽次數(shù):4869
日期:2018-12 瀏覽次數(shù):4336
日期:2018-10 瀏覽次數(shù):5152
日期:2018-12 瀏覽次數(shù):6228
日期:2018-11 瀏覽次數(shù):4481
日期:2018-08 瀏覽次數(shù):4602
日期:2018-11 瀏覽次數(shù):12654
日期:2018-09 瀏覽次數(shù):5594
日期:2018-12 瀏覽次數(shù):4848
日期:2018-10 瀏覽次數(shù):4201
日期:2018-11 瀏覽次數(shù):4541
日期:2018-12 瀏覽次數(shù):6076
日期:2018-06 瀏覽次數(shù):4017
日期:2018-08 瀏覽次數(shù):5451
日期:2018-10 瀏覽次數(shù):4466
日期:2018-12 瀏覽次數(shù):4547
日期:2018-07 瀏覽次數(shù):4371
日期:2018-12 瀏覽次數(shù):4512
日期:2018-06 瀏覽次數(shù):4400
日期:2018-11 瀏覽次數(shù):4386
日期:2018-12 瀏覽次數(shù):4261
日期:2018-12 瀏覽次數(shù):5296
Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.