做了挺久flutter項目了 總結一下其中的一些東西 首先你要知道flutter可以用vscode開發 ,也可以用Android Studio開發但是 vs更輕便,推薦只需要裝插件即可:
我這邊用的vscode,具體環境,參考flutter中文網 教程跟詳細。
安裝好之後可以看下是否是好的:
終端輸入
flutter doctor
查看flutter版本 :
flutter --version
此處 這樣就算完了,之後我們知道 iOS現在有兩套語言 :objc和swift,安卓現在也是java和kotlin ,如果你不設置語言的話創建的flutter項目就是默認的語言,vscode中按下cmd+, 可以轉到設置 , 在擴展程序下找到dart&flutter,這裏可以設置默認創建的項目語言
這樣子選擇你想要的語言即可
創建項目的話我們可以用快捷鍵cdm+shift+p輸入new flutter後創建項目
即可創建新項目,創建好之後會自動配置一些需要的文件等等,等待配置完成即可。
需要注意的是,項目分成幾個部分,
首先安卓 iOS文件夾,這個就是對應的項目,都是可以打開對用開發工具運行的,
下邊的pubspec就是所依賴的庫,在pub.dev 可以找到你想要的庫
來看下文件內容
首先
這裏name不推薦!亂改!一旦創建之後最好是不要修改,很容易會出現一大堆莫名其妙的問題!
之後的description可以描述一下
下邊:
這裏可以修改前面的1.0.0就是大版本號,後邊的+1就是build號
參考這段話:
# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
重要的,三方庫,上pub.dev的,可以直接引用進來
這裏注意,dependencies和dev_dependencies,不要加錯地方了,要不等下找不到庫了,還有^是最低版本,你可以選擇固定一個也可以選擇加上^,這裏推薦一個插件Version Lens
即可直接看到最新版本了,另外需要注意,由於跨平臺,有可能需要native的一些庫,這種語言問題比如,iOS的objc和swift,你需要注意一下,看是否支持,
因爲有可能是swift但是你的語言是objc,項目就無法啓動了,會報錯的!
在pubspec.yaml最下邊我們還可以看到
沒錯,這裏很清楚的告訴我們你想要設置images fonts等等需要怎麼寫路徑,記得一定要對齊!格式很重要,要不然會找不到的!
我們也知道iOS中是需要1x 2x 3x三種的,那麼怎麼解決呢?
比如一個圖片叫tel.png,那麼我們只需要在images放入1x,在2.0x文件夾下放入2x,在3.0x文件夾下放入3x圖片即可,記得名字要一樣,比如咱們的tel.png,在每個對應的文件夾下都應該叫tel.png ,不需要帶對應的2x 3x,引入之後 在pubspec.yaml引入一下即可,如果是像我一樣整個文件夾引入那就按下cmd+s即可
點擊vscode右下角可以切換模擬器 / 真機等等
真機的話iOS是需要證書的
選好運行的設備,按下fn+f5就可以跑起來了