真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

flutter_wx的簡(jiǎn)單介紹

我的第一個(gè)flutter項(xiàng)目:購(gòu)物app

這是個(gè)產(chǎn)假作業(yè)。故事是這樣的。

濉溪ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

生了娃,生活一地雞毛。擦,碎鈔機(jī)的需求怎么那么多。

當(dāng)時(shí),有一堆返利優(yōu)惠券app比較火

...這里扯多了這篇文章被鎖了....

我就想,來(lái)扒一扒,他們是怎么賺錢的。

結(jié)論:淘寶聯(lián)盟。

淘寶聯(lián)盟是阿里巴巴旗下的親兒子,不那么有名是因?yàn)槭莻€(gè)私生子吧,官網(wǎng)上還有個(gè)沒(méi)聽(tīng)過(guò)的名號(hào)叫“阿里媽媽”,呵呵。淘寶聯(lián)盟是給淘寶上推廣商品的人用的,他們有一個(gè)專門的名稱,叫做淘寶客,即“推廣者(Publisher)”,他們幫電商平臺(tái)推薦商品給別的買家,買家購(gòu)買后,電商平臺(tái)可以增加銷量,而他們則可以獲得推廣傭金。

后來(lái),知道京東也有自己的聯(lián)盟平臺(tái),叫做“京東聯(lián)盟”,拼多多也有,叫做“多多進(jìn)寶”。

回到這些app的賺錢邏輯上來(lái)。對(duì)于用戶而言,它們的兩個(gè)噱頭是:

“用我們的app買,你可以自用省錢”

“用我們的app,分享給別人下單,你可以賺錢!”

所以,這些app推廣起來(lái)很容易啊,因?yàn)檎l(shuí)用誰(shuí)賺錢呀!

那么為何不自己搭一個(gè)呢?

與其這些傭金落到別人口袋,不如自己直接做最頂層上線,發(fā)展出N個(gè)下線,豈不是躺著賺錢,哈哈哈哈哈

搞清楚賺錢邏輯之后,我發(fā)現(xiàn)淘寶聯(lián)盟的api是很開(kāi)放的。

商品鏈接: ;pid=mm_343780171_368000361_101527600308itemId=595640102734src=qtka_wxxtdx=1

其中,activityId是優(yōu)惠券id,pid是推廣者在阿里媽媽官網(wǎng)注冊(cè)的id,只有這個(gè)id是我注冊(cè)的,那么傭金就到我口袋去了,哈哈哈。

剛好練一下flutter,一次開(kāi)發(fā),兩端使用,我一個(gè)人就可以了。app暫時(shí)取名為“小豬購(gòu)”,拿粉紅豬貼牌。

演示視頻:

Flutter初探--常用依賴包

國(guó)外地址:

國(guó)內(nèi)鏡像:

以 flutter_screenutil 為例

路由框架 annotation_route

狀態(tài)管理 provider

UI適配 flutter_screenutil

刷新控件 flutter_easyrefresh

網(wǎng)絡(luò)請(qǐng)求 dio

toast控件 fluttertoast

圖表庫(kù) charts_flutter

網(wǎng)絡(luò)監(jiān)聽(tīng) connectivity

事件總線 event_bus

日歷組件 table_calendar

官方webview webview_flutter

第三方webview flutter_webview_plugin

該篇文章為常用依賴包總結(jié),用來(lái)記錄所需要的常用依賴包,后續(xù)會(huì)不斷擴(kuò)充內(nèi)容~

使用Flutter + V8/JsCore開(kāi)發(fā)小程序引擎(一)

眾所周知,小程序是由HTML標(biāo)簽來(lái)開(kāi)發(fā)原生組件,那么首先需要將HTML做解析,這里我們將HTML通過(guò)node腳本解析成JSON字符串,再用Dart來(lái)解析JSON,映射對(duì)應(yīng)的標(biāo)簽到flutter的組件。這里先簡(jiǎn)單介紹實(shí)現(xiàn)的功能以及展示效果,后續(xù)再詳細(xì)介紹。

為了高效解析,直接用flutter的組件名在HTML文件上開(kāi)發(fā)

直接使用flutter的組件

模仿微信小程序的Api,cc對(duì)應(yīng)是微信小程序的wx

以上HTML中的例子

《使用Flutter + V8/JsCore開(kāi)發(fā)小程序引擎(二)》

《使用Flutter + V8/JsCore開(kāi)發(fā)小程序引擎(三)》

Flutter踩坑之旅

記錄下自己踩過(guò)的坑,怕忘了

一.TextField:

1.去掉輸入數(shù)字的計(jì)數(shù):decoration中的counterStyle: TextStyle(color: Colors.transparent).

2.去掉獲取和失去焦點(diǎn)時(shí)邊框改變顏色的效果:decoration內(nèi)border: InputBorder.none,

3.去邊框時(shí)設(shè)置BorderSide的width為0或color: Colors.transparent后依然存在邊框時(shí),需要設(shè)置為borderSide: BorderSide.none

4.設(shè)置背景色需要在decoration內(nèi) ? ? filled:true, ? fillColor: Colors.blue同時(shí)設(shè)置才會(huì)顯示

二.Uint8List類型和string類型,Listint的轉(zhuǎn)換

連續(xù)兩次base64解碼時(shí),參數(shù)只能使用string類型,但是base64解碼后是Uint8List類型,此時(shí)需要將Uint8List類型轉(zhuǎn)換為string類型,使用:utf8.decode(Uint8List)即可,需要import 'dart:convert';

Listint轉(zhuǎn)Uint8List:讀取接口時(shí)獲取的數(shù)據(jù)是Listint的圖片數(shù)據(jù),想顯示時(shí)需要轉(zhuǎn)成Uint8List,然后使用Image.memory(),使用:Uint8List.fromList(Listint)即可

三.報(bào)錯(cuò):DioError [DioErrorType.DEFAULT]: FormatException: Unexpected character (at character 1)MGFlMFo0NEZ3RWNMbE5YbGNGOXZGcUlJdUhIS2x2Q3NlckxqWXlEeG5JWndZdXIrSUpLN3ZOczR...

這是因?yàn)閐io請(qǐng)求返回的數(shù)據(jù)默認(rèn)是以json的格式讀取的,而返回的數(shù)據(jù)是密文形式,需要修改dio的Options的responseType為ResponseType.PLAIN,這樣返回的數(shù)據(jù)就以字符串形式處理.

四.去掉點(diǎn)擊控件背景出現(xiàn)的水波紋效果,即去掉md的效果:

在main.dart的MaterialApp內(nèi)的theme加上splashColor: Colors.transparent

五.布局去掉沉浸式效果和布局設(shè)置占滿全屏卻無(wú)效的問(wèn)題

使用Scaffold的body的布局默認(rèn)是沉浸式的,將狀態(tài)欄一起包含了,可以通過(guò)在body后添加一層SafeArea即可.

布局設(shè)置double.infinity占滿全屏高度卻無(wú)效,大部分情況都是因?yàn)槟骋患?jí)的父布局的高度已經(jīng)有了限制,所以設(shè)置充滿屏幕只會(huì)充滿父布局,有些widget默認(rèn)是按內(nèi)容填充類似wrap_content就會(huì)導(dǎo)致寫布局的過(guò)程中自己沒(méi)有限制高度但最后的布局不是自己想要的,可以給各個(gè)父布局設(shè)置不同背景顏色來(lái)查看是從哪兒開(kāi)始被限制了高度來(lái)排查問(wèn)題.

六.占滿剩余空間,類似android的match_parent可以使用double.infinity

七.LinearProgressIndicator

1.LinearProgressIndicator設(shè)置進(jìn)度值的顏色為單一顏色:valueColor : new AlwaysStoppedAnimation(Color(JColor.blue))

2.給LinearProgressIndicator設(shè)置圓角:ClipRRect(

borderRadius:BorderRadius.circular(60.0),

child:LinearProgressIndicator(value:0.2,backgroundColor:Color(JColor.grayBg),valueColor:new AlwaysStoppedAnimation(Color(JColor.blue)),

)

八.Expanded:

1.若嵌套多層column且內(nèi)容的高度都不確定需要占滿剩余空間,需要每層的column的內(nèi)容都嵌套一層expanded來(lái)申明每層都占滿剩余的空間,否則最里面的內(nèi)容層需要指定高度,不然會(huì)報(bào)錯(cuò)

九.Container設(shè)置最小/大寬度或高度:

constraints:BoxConstraints(minHeight:56),

十.滑動(dòng)的widget嵌套:

1.解決滑動(dòng)沖突:內(nèi)層嵌套的滑動(dòng)widget設(shè)置physics:NeverScrollableScrollPhysics()

2.解決滑動(dòng)嵌套u(yù)i顯示不出來(lái)或者報(bào)錯(cuò),內(nèi)層的滑動(dòng)widget設(shè)置shrinkWrap:true

十一.使用multi_image_picker: ^4.3.4安卓運(yùn)行報(bào)錯(cuò)Didn't find class "com.sangcomz.fishbun.FishBunFileProvider"

1.需要android工程支持androidx,需要在android工程的gradle.properties內(nèi)添加android.enableJetifier=true和android.useAndroidX=true并點(diǎn)擊右上角的open for editing in android studio,運(yùn)行成功后就可以了

十二.使用textfield時(shí)的文字ui總是很高

使用了maxlength且只是在textfield的InputDecoration設(shè)置counterStyle的顏色為透明使下面的計(jì)數(shù)文字消失會(huì)導(dǎo)致文字ui很高,counter的計(jì)數(shù)文字只是顏色是透明但依然在布局中占了位置所以導(dǎo)致文字很高,直接使用counterText:""即可

十三.使用ListView報(bào)錯(cuò)Vertical viewport was given unbounded height

需要將ListView放入Expanded內(nèi)部


新聞標(biāo)題:flutter_wx的簡(jiǎn)單介紹
當(dāng)前URL:http://weahome.cn/article/dscccdo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部