Flutter中幾個常見的小白問題

在我們QQ群(892398530)中總會遇到各種各樣的問題,現(xiàn)在將一些常見問題總結(jié)一下,以供大家學習。

一、flutter run或者flutter packages get 卡住了

安裝Flutter的時候一定沒看文檔,由于你懂的原因,國內(nèi)使用Flutter需要配置鏡像。為PUB_HOSTED_URLFLUTTER_STORAGE_BASE_URL配置下指定地址。目前來有兩個鏡像可供選擇:

//上海交通大學 Linux 用戶組
FLUTTER_STORAGE_BASE_URL: https://mirrors.sjtug.sjtu.edu.cn
PUB_HOSTED_URL: https://dart-pub.mirrors.sjtug.sjtu.edu.cn

//Flutter 社區(qū)
FLUTTER_STORAGE_BASE_URL: https://storage.flutter-io.cn
PUB_HOSTED_URL: https://pub.flutter-io.cn

至于選哪個,看你愛好了。
在Windows上就是配置環(huán)境變量了。以Windows10為例,右擊此電腦,依次選擇選擇屬性->高級系統(tǒng)設(shè)置->環(huán)境變量,

image.png

然后就是這張圖了:


image.png

至于為當前用戶還是系統(tǒng)創(chuàng)建環(huán)境變量,看你心情:


image.png

image.png

對MacOS或者Linux來說,運行flutter命令前可以這樣:

 export PUB_HOSTED_URL=https://pub.flutter-io.cn
 export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

當然了這只對當前終端有效,如果想一勞永逸可以將上述環(huán)境變量添加到/etc/profile或者~/.bashrc中:

export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

官方文檔在此。

二、License for package Android SDK Build-Tools 28.0.3 not accepted.

運行flutter doctor之后有如下提示:

image.png

無非就是要你同意一下android-licenses,我們接著運行: flutter doctor --android-licenses,然后一頓yes就可以了。

image.png

三、gradle無法下載依賴

參考我之前的文章

四、_是什么意思

經(jīng)常在看到類似如下所示的代碼:

    fluwx.responseFromShare.listen((_) {
      //do something
    });

所以,_到底是什么?這個_就是一個普通參數(shù),和a,b,c這樣的參數(shù)實質(zhì)是一樣的。一般來說,被命名為_的變量一般來說是不會被引用的,相當于一個占位符,是一種不成文的規(guī)定,類似的規(guī)定也可見于golang,kotlin等語言中。

五、type 'String' is not a subtype of type 'int' in type cast

沒什么可說的,就是類型轉(zhuǎn)換錯誤,常見于json解析中。除了仔細檢查別無選擇。

六、運行android時提示Bad UTF-8

引起這個問題的原因太多了,不好詳述。但是我可以告訴你一個辦法。最簡單的就是安裝一個AndroidStudio,然后在項目上右鍵,選擇Flutter

打開安裝項目

然后點擊Run:


運行按鈕

一般來說,運行一下,控制臺就會告訴你究竟有什么問題。

當然了,如果不想安裝AndroidStudio也是可以的,前提是你會玩終端,首先進入android目錄,然后運行:

./gradlew assembleDebug

在Windows下:

gradlew assembleDebug

終端會給出相應(yīng)的錯誤信息,一般來說都能解決問題。

六、Android resource linking failed

如下圖:


image.png

修改compileSdkVersion到指定版本,上圖就是要改到28。找到build.gradle,具體位置如下:

build.gradle

然后修改compileSdkVersion版本:
compileSdkVersion

八、我的java文件怎么全飄紅了

我的java文件全紅了,而且自動提示也沒了。

紅了

你為什么要在Flutter工程中編寫原生代碼?請用AndroidStudio或者Xcode打開對應(yīng)的原生項目。至于怎么打開請看第六條。
如果閣下練過鐵頭功,非想在Flutter工程寫Android的原生代碼,那你可以打開AndroidStudio是設(shè)置,找到Flutter選項,然后勾上下面的選項試試:
勾上

這只是一個實驗性的選項。

八、編寫插件怎么沒提示

第七條去。

九、有沒有上線的Flutter App啊

有。大廠有閑魚,now直播,美團外賣及京東金融等應(yīng)用,這幾個是混合開發(fā),小廠有排班日歷,這是一個純flutter應(yīng)用。
還有更多的請點擊這里

最后

寫了這么多,就不能關(guān)注一下微信公眾號?

OpenFlutter
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容