Flutter--Error: Cannot run with sound null safety, because the following dependencies don't support null safety

10年積累的成都做網(wǎng)站、成都網(wǎng)站建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶(hù)對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶(hù)得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先做網(wǎng)站后付款的網(wǎng)站建設(shè)流程,更有和靜免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
flutter sdk提示不是支持 null safety模式
解決方法
1:
在Android Studio中
Run -- Edit Configurations -- Add Additional Run args -- --no-sound-null-safety
2:
flutter run --no-sound-null-safety
flutter build apk --no-sound-null-safety
flutter的命令失效, 提示 zsh: command not found: flutter
解決辦法:
1 、執(zhí)行:【open ~/.zshrc 】
2、如果 提示文件不存在,則執(zhí)行:【vim ~/.zshrc 】新建一個(gè)新文件
3、新建窗口再執(zhí)行【open ~/.bash_profile 】
4、把 打開(kāi)的bash_profile 中的內(nèi)容copy到 上一個(gè)窗口新建的zshrc 文件中,保存:
【:wq回車(chē)】
5、再使用source命令重新加載一下:【source ~/.zshrc】,下次再編輯這個(gè)文件就可以直接執(zhí)行:【open ~/.zshrc】
6、運(yùn)行【flutter -h 】看是否生效
在耗時(shí)操作的時(shí)候,一般都要彈出一個(gè)加載框,然后在完成的時(shí)候再把加載框關(guān)掉,在Flutter中可以直接用showDialog()來(lái)彈出一個(gè)對(duì)話框。
這是一個(gè)簡(jiǎn)單的提示對(duì)話框,包含了關(guān)閉按鈕,點(diǎn)擊就能關(guān)閉。但一般的耗時(shí)操作完成,就需要我們自己把dialog關(guān)閉掉。
首先,開(kāi)啟dialog的時(shí)機(jī)。由于我們需要獲取到BuildContext,所以就得等build()方法走完,這里可以用Future.delayed()來(lái)等創(chuàng)建好BuildContext再進(jìn)行創(chuàng)建,或者用Timer來(lái)延遲操作,我選擇了前者。
其中delayed()在initState()結(jié)尾來(lái)做就行,這里參考網(wǎng)友封裝了一個(gè)LoadingDialog。
那么接下來(lái)要在什么時(shí)機(jī)關(guān)閉呢?
一開(kāi)始,我理所當(dāng)然的以為,是在異步方法結(jié)束后,去更新界面的時(shí)候關(guān)閉,也就是setState(() {})的時(shí)候,可是不管怎么嘗試,用Navigator.pop()不行,用Navigator.of(context, rootNavigator: true).pop(result)也不行,用FlutterBoost.singleton.close(id)也不行,用FlutterBoost.singleton.closeCurrent()也不行,都會(huì)直接把非Dialog的頁(yè)面也關(guān)閉掉,這讓我百思不得其解,因?yàn)閟howDialog()的本質(zhì)也是新建了一個(gè)Route出來(lái),也就是最頂層的頁(yè)面是彈出的Dialog,可是為什么關(guān)不掉呢。
一番思前想后,把showDialog的邏輯移到和異步邏輯同級(jí),也就是setState(() {})外面,然后把showDialog()自身創(chuàng)建的BuildContext傳進(jìn)去就能正常關(guān)閉了。也就是,在setState(() {})的時(shí)候,其實(shí)用的context還是非Dialog頁(yè)面的,所以關(guān)閉的當(dāng)然就不是Dialog了。
持有Dialog自己的BuildContext,然后在異步以后調(diào)用就行了。
一般這樣的問(wèn)題都是Flutter內(nèi)部導(dǎo)致的問(wèn)題,所以?xún)?yōu)先建議命令執(zhí)行:flutter clean,然后再次執(zhí)行操作。
需要在命令行操作
但是我查出來(lái)的并沒(méi)有我的包名
6.成功了,現(xiàn)在在安裝APP,就ok了
新手最近在使用Getx做狀態(tài)管理, 在使用中遇到問(wèn)題, 隨手記錄下,
提示錯(cuò)誤:
GET the improper use of a getx has been detected you should only use getx or obx for the specific widget that will be updated. if you are seeing this error, you probabaly did not insert any observable variables into GetX/Obx...
其實(shí)提示很明顯, 就是Obx()中組件沒(méi)用到controller內(nèi)容, 比如Obx(()=Text("123")), 這里面Obx沒(méi)有用到GetxController的對(duì)象, 就會(huì)報(bào)這個(gè)錯(cuò)誤,如果改成Obx(()=Text(controller.content)), 就可以了
分享文章:flutter提示的簡(jiǎn)單介紹
當(dāng)前網(wǎng)址:http://chinadenli.net/article30/dsidhpo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、域名注冊(cè)、App設(shè)計(jì)、網(wǎng)站排名、網(wǎng)站內(nèi)鏈、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)