bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

flutter手冊下載,flutter文件下載

小程序開發(fā)和App開發(fā)有什么區(qū)別,哪個(gè)好學(xué)一些?

小程序有很多種,微信小程序、釘釘小程序 等等。而App也分分了好幾個(gè)陣營。

創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供鐵鋒網(wǎng)站建設(shè)、鐵鋒做網(wǎng)站、鐵鋒網(wǎng)站設(shè)計(jì)、鐵鋒網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、鐵鋒企業(yè)網(wǎng)站模板建站服務(wù),十年鐵鋒做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

我們現(xiàn)在說的小程序一般都是基于H5的,或者說語法非常的類似,配合js和css樣式達(dá)到相應(yīng)的顯示效果。開發(fā)時(shí)涉及的技術(shù)棧主要是h5、css、js 相關(guān)的。

App 來說也分原生App 和 H5 App 還有就是混合開發(fā)的。原生App來說體驗(yàn)好,Android app主要的開發(fā)語言是java和Kotlin,iOS 的app開發(fā)語言是Objective-C 和 swift。原生App需要了解平臺語言和相關(guān)的UI框架。

混合App 也有很多框架類似ionic 等等,這部分需要了解相關(guān)的js,例如Angularjs reactjs vue.js 等等,體系也很多。

谷歌的flutter 號稱跨平臺開發(fā),使用的是dart語言。這也是近幾年推出的。

總的來說難易程度上小程序應(yīng)該會更容易一些吧。當(dāng)然這也是因人而異。

記錄flutter-folio開源項(xiàng)目啟動報(bào)錯Method not found

下載了一個(gè)開源項(xiàng)目flutter-folio

編譯的時(shí)候一直在說方法找不到。

Error: Method not found:

是cloud_firebase_web跳轉(zhuǎn)找firebase_core的某個(gè)方法的時(shí)候說找不到。

按照網(wǎng)上說的在firebase包定義前面添加關(guān)鍵字dependency_overrides:也不行。

開始的時(shí)候嘗試著自己修改方法名讓它能夠找到,一直搞不定。總感覺這個(gè)是系統(tǒng)自帶的類庫,不應(yīng)該發(fā)生這么低級的錯誤了。

最后仔細(xì)看了一下他們的版本不對應(yīng),有可能是版本問題,cloud_firebase_web是1.0.7,使用工具跳轉(zhuǎn)到firebase_core的時(shí)候是1.17.0

然后就嘗試著手動修改firebase_core關(guān)聯(lián)的包,不要讓它自動匹配版本,而是強(qiáng)制使用某一個(gè)固定版本。

比如之前是這么寫的:firebase_core: ^1.0.1,^含義是找到大于1.0.1小于2.0.0的最高版本

修改成:firebase_core: 1.4.0

具體有哪些版本可以去這個(gè)網(wǎng)站上找:

然后就可以了。

事后分析原因是:firebase_core雖然沒有修改大版本號,當(dāng)前依然是1.17.0。但是里面做了不兼容的改動,刪除了某些方法,導(dǎo)致了找不到。而cloud_firebase_web當(dāng)前的最高版本已經(jīng)是3點(diǎn)幾了,因此對應(yīng)firebase_core版本的cloud_firebase_web在2或者3才兼容。

所以包管理真的是一件比較麻煩的事情。

Flutter入門-Dart面向?qū)ο笤?/h2>

Dart作為高級語言,支持面向?qū)ο蟮暮芏嗵匦裕⑶抑С只趍ixin的繼承方式,基于mixin的繼承方式是指:一個(gè)類可以繼承自多個(gè)父類,相當(dāng)于其他語言里的多繼承。所有的類都有同一個(gè)基類Object,這和特性類似于Java語言,Java所有的類也都是繼承自O(shè)bject,也就是說一切皆對象。

Dart 是一門面向?qū)ο蟮恼Z言, 全部的類都是繼承自 Object , 除了支持傳統(tǒng)的 繼承、封裝、多態(tài) , 還有基于組合(Mixin-based)的繼承特性

類型推導(dǎo)(var/final/const)

var

final和const的區(qū)別

3.非零即真( )

4.字符串

5.集合

Dart中變量初始值為null,即使是int類型也可以是null(java中int默認(rèn)是0, boolean默認(rèn)是false); Dart支持自識別,可以是用var定義變量,也可以直接指定具體類型; final或者const都可修飾不可變的變量,final變量只能賦值一次,const是編譯時(shí)常量。

int和double是num子類,沒有float類型; 支持字符串模板,用${expression}的方式來實(shí)現(xiàn)字符串效果,類似如字符串拼接; String可以使用單引號或者雙引號; Dart沒有數(shù)組,只有列表; 其中List,Set,Map不是抽象接口,是具體實(shí)現(xiàn)類,可直接使用; Map的key沒有指定類型,key類型不一致不會報(bào)錯;key不能相同,但是value可以相同,value可以為null。 var name = 'Tom';

方法也是對象,方法可賦值給一個(gè)變量; 如果方法的參數(shù)是解構(gòu)出來的可以通過 @required 注解標(biāo)注為必填 const Scrollbar({Key key, @required Widget child}); 支持可選參數(shù),可選命名參數(shù)用{}包圍,可選位置參數(shù)寫在最后并且使用[]包圍 String say(String from, String msg, [String device]); 支持默認(rèn)參數(shù) void enableFlags({bool bold = false, bool hidden = false}) {…}; 以_開頭的方法都是私有的。 void main() {

支持閉包,閉包能夠訪問外部方法內(nèi)部的局部變量

1.空替換?? expr1 ?? expr2,如果expr1是non-null,返回其值。否則執(zhí)行expr2并返回其結(jié)果; 2.條件成員訪問?.P?.y = 4; 如果p是non-null,則設(shè)置y的值等于4; 3.類型判定操作符(as,is,is!); 4.級聯(lián)操作,可以在同一個(gè)對象上連續(xù)調(diào)用多個(gè)函數(shù)以及訪問成員變量;

和java不同的是,Dart可以拋出任意類型的對象; 程序不會強(qiáng)制要求開發(fā)中處理異常,但若發(fā)生異常,程序會中斷; 其中異常主要分為Error和Exception兩種類型。

創(chuàng)建對象可以不使用new關(guān)鍵字; Dart中沒有public,private,protected這些關(guān)鍵字; 沒有interfaces關(guān)鍵字,每一個(gè)類都是一個(gè)接口。我們可以用抽象類來類比java中的接口; Dart把多重繼承的類叫做Mixins。

支持語法糖 Point(this.x, this.y); 每個(gè)實(shí)例變量都會自動生成一個(gè)getter方法,Non-final變量還會自動生成一個(gè)setter; 命名構(gòu)造函數(shù),使用命名構(gòu)造函數(shù)可以為一個(gè)類實(shí)現(xiàn)多個(gè)構(gòu)造函數(shù),也能更加清晰的表明你的意圖;

斷言是如果條件表達(dá)式不滿足則停止代碼執(zhí)行; 斷言只在檢查模式下運(yùn)行有效,如果在生產(chǎn)模式下運(yùn)行則不會執(zhí)行。

Dart 以兩種模式運(yùn)行: Dart 1.x 有生產(chǎn)模式和檢查模式兩種模式, Dart 2.x 中移除了檢查模式。

注:建議在開發(fā)/測試模式中使用 檢查模式 運(yùn)行 Dart VM ,因?yàn)樗鼤砑泳婧湾e誤以幫助開發(fā)和調(diào)試過程;選中的模式會強(qiáng)制執(zhí)行各種檢查,例如類型檢查等。

dart標(biāo)識符可以包括字符和數(shù)字,但不能以 數(shù)字開頭 。

Dart 是一種面向?qū)ο蟮木幊陶Z言。

代碼說明:定義了一個(gè)類 TestClass ,這個(gè)類擁有一個(gè)方法 disp() ,方法可以實(shí)現(xiàn)在終端打印字符串 Hello Dart! ,使用 new 關(guān)鍵字創(chuàng)建類的對象,該對象調(diào)用方法 disp() 。

關(guān)于dart的學(xué)習(xí)還有很多;我列出如下: Flutter高級工程師進(jìn)階學(xué)習(xí)資料;需要可以私信我。發(fā)送“核心筆記”或“手冊”,即可領(lǐng)取資料!

飛鳥集txt全集下載

鏈接:

提取碼:?p2v7

《飛鳥集》是印度詩人泰戈?duì)杽?chuàng)作的詩集,它包括325首清麗的無標(biāo)題小詩,首次出版于1916年。這些詩的基本題材多為極其常見事物,不外乎小草、落葉、飛鳥、星辰、河流等等。

Flutter下載jar速度慢

文章轉(zhuǎn)自:

用Android Stduio創(chuàng)建Flutter項(xiàng)目的時(shí)候,會出現(xiàn)各種問題,踩了一個(gè)又一個(gè),最后編譯的時(shí)候可能會出現(xiàn)一直顯示Running Gradle task 'assembleDebug'然后就不動了,或者會顯示Could not resolve io.flutter等問題,歸根結(jié)底是網(wǎng)絡(luò)無法訪問到Google服務(wù)引起的,兩種解決方案:

1.具有比較良好的訪問谷歌的網(wǎng)絡(luò)環(huán)境

2.修改鏡像源為國內(nèi)的:

找到Flutte SDK目錄下的Flutter打包配置文件flutter.gradle

路徑為flutter\packages\flutter_tools\gradle\flutter.gradle

第一處配置:

buildscript {

repositories {

//注釋

// google()

// jcenter()

//添加

maven { url ' ' }

maven { url ' ' }

maven { url ' ' }

}

dependencies {

classpath 'com.android.tools.build:gradle:3.5.0'

}

}

第二處配置:

class FlutterPlugin implements PluginProject {

//注釋

// private static final String MAVEN_REPO = " ";

//添加這行

private static final String MAVEN_REPO = " ";

第三處配置:

void addFlutterDependencies(buildType) {

String flutterBuildMode = buildModeFor(buildType)

if (!supportsBuildMode(flutterBuildMode)) {

return

}

String repository = useLocalEngine()

? project.property('local-engine-repo')

: MAVEN_REPO

最后一處,項(xiàng)目中的配置,修改Flutter項(xiàng)目下的android下的build.gradle:

buildscript {

ext.kotlin_version = '1.3.50'

repositories {

// google()

// jcenter()

maven { url ' ' }

maven { url ' ' }

maven { url ' ' }

}

}

allprojects {

repositories {

// google()

// jcenter()

maven { url ' ' }

maven { url ' ' }

maven { url ' ' }

}

}

修改完成后,再build,就可以正常構(gòu)建了!!!

Flutter真香,我用它寫了個(gè)桌面版JSON解析工具

Flutter支持穩(wěn)定的桌面設(shè)備開發(fā)已經(jīng)一段時(shí)間了,不得不說,F(xiàn)lutter多平臺支持的特性真的很香。我本人并沒有任何桌面開發(fā)的經(jīng)驗(yàn),但仍然使用Flutter開發(fā)出了一個(gè)桌面版小程序,功能很簡單,就是對輸入的json做格式化處理和轉(zhuǎn)模型。

話不多說,先來看看實(shí)際效果。 項(xiàng)目源碼地址

開發(fā)環(huán)境如下:

Flutter : 2.8.1

Dart : 2.15.1

IDE : VSCode

JSON作為我們?nèi)粘i_發(fā)工作中經(jīng)常要打交道的一種數(shù)據(jù)格式,它共有6種數(shù)據(jù)類型: null , num , string , object , array , bool 。我們勢必對它又愛又恨。愛他因?yàn)樗鳛閿?shù)據(jù)處理的一種格式確實(shí)非常方便簡潔。但是在我們做Flutter開發(fā)中,又需要接觸到j(luò)son解析時(shí),就會感覺非常棘手,因?yàn)閒lutter沒有反射,導(dǎo)致json轉(zhuǎn)模型這塊需要手寫那繁雜的映射關(guān)系。就像下面這樣子。

數(shù)據(jù)量少還能接受,一旦量大,那么光手寫這個(gè)解析方法都能讓你懷疑人生。更何況手寫還有出錯的可能。好在官方有個(gè)工具**json_serializable**可以自動生成這塊轉(zhuǎn)換代碼,也解決了flutter界json轉(zhuǎn)模型的空缺。當(dāng)然,業(yè)界也有專門解析json的網(wǎng)站,可以自動生成dart代碼,使用者在生成后復(fù)制進(jìn)項(xiàng)目中即可,也是非常方便的。

本項(xiàng)目以json解析為切入點(diǎn),和大家一起來看下flutter是如何開發(fā)桌面應(yīng)用的。

要讓我們的flutter項(xiàng)目支持桌面設(shè)備。我們首先需要修改下flutter的設(shè)置。如下,讓我們的項(xiàng)目支持 windows 和 macos 系統(tǒng)。

接下來使用 flutter create 命令創(chuàng)建我們的模版工程。

創(chuàng)建完項(xiàng)目后,我們就可以 run 起來了。

先來看下整體界面,界面四塊,分別為功能模塊、文件選擇模塊、輸入模塊、輸出模塊。

我們在新建一個(gè)桌面應(yīng)用時(shí),默認(rèn)的模版又一個(gè)Appbar,此時(shí)應(yīng)用可以用鼠標(biāo)拖拽移動,放大縮小,還可以縮到很小。但是,我們一旦去掉這個(gè)導(dǎo)航欄,那么窗口就不能用鼠標(biāo)拖動了,并且我們往往不希望用戶將我們的窗口縮放的很小,這會導(dǎo)致頁面異常,一些重要信息都展示不全。因此這里需要借助第三方組件 bitsdojo_window 。通過 bitsdojo_window ,我們可以實(shí)現(xiàn)窗口的定制化,拖動,最小尺寸,最大尺寸,窗口邊框,窗口頂部放大、縮小、關(guān)閉的按鈕等。

通過 InkWell 組件,可以捕捉到手勢、鼠標(biāo)、觸控筆的移動和停留位置

這個(gè)功能是鼠標(biāo)移動后的UI交互界面。要在窗口上顯示一個(gè)提示框,可以使用 Overlay 。需要注意的是,由于在 Overlay 上的 text 的根結(jié)點(diǎn)不是 Material 風(fēng)格的組件,因此會出現(xiàn)黃色的下劃線。因此一定要用 Material 包一下 text 。并且你必須給創(chuàng)建的 OverlayEntry 一個(gè)位置,否則它將全屏顯示。

讀取說表拖拽的文件一開始想嘗試使用 InkWell 組件,但是這個(gè)組件無法識別拖拽中的鼠標(biāo),并且也無法從中拿到文件信息。因此放棄。后來從文章《Flutter-2天寫個(gè)桌面端APP》中發(fā)現(xiàn)一個(gè)可讀取拖拽文件的組件 desktop_drop ,能滿足要求。

使用開源組件 file_picker ,選完圖片后的操作和拖拽選擇圖片后的操作一致。

Textfield 如果要顯示富文本,那么需要自定義 TextEditingController 。并重寫 buildTextSpan 方法。

在做導(dǎo)出功能時(shí)遇到下列報(bào)錯,保存提示為沒有權(quán)限訪問對應(yīng)目錄下的文件。

通過Apple的開發(fā)文檔找到有關(guān)權(quán)限問題的說明。其中有個(gè)授權(quán)私鑰的key為 com.apple.security.files.downloads.read-write ,表示 對用戶的下載文件夾的讀/寫訪問權(quán)限 。那么,使用Xcode打開Flutter項(xiàng)目中的mac應(yīng)用,修改工程目錄下的 DebugProfile.entitlements 文件,向 entitlements 文件中添加 com.apple.security.files.downloads.read-write ,并將值設(shè)置為YES,保存后重啟Flutter項(xiàng)目。發(fā)現(xiàn)已經(jīng)可以向下載目錄中讀寫文件了。

當(dāng)然,這是正常操作。還有個(gè)騷操作就是關(guān)閉系統(tǒng)的沙盒機(jī)制。將 entitlements 文件的 App Sandbox 設(shè)置為NO。這樣我們就可以訪問任意路徑了。當(dāng)然關(guān)閉應(yīng)用的沙盒也就相當(dāng)于關(guān)閉了應(yīng)用的防護(hù)機(jī)制,因此這個(gè)選項(xiàng)慎用。

原文地址:

分享名稱:flutter手冊下載,flutter文件下載
文章網(wǎng)址:http://vcdvsql.cn/article20/dsdgsjo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設(shè)手機(jī)網(wǎng)站建設(shè)網(wǎng)站排名企業(yè)網(wǎng)站制作微信公眾號動態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)