幾個flutter 開源專案測試
首先測試一下開源的幾個flutter專案。
提要
先說一下,flutter現在沒有原生支援arm64 macos,到我寫的現在時間為止,還是用的Rosetta 2轉譯的x86程式碼。我的m1 macbook pro上執行一些flutter環境,大部分都是基於rosetta 2轉譯下執行的。
一個音樂播放器
git clone https://github.com/Sangwan5688/BlackHole cd BlackHole # set proxy on your computer to be able to request Google firstly # lookup dependencies flutter pub deps #install all dependencies flutter pub get -v
然後用android studio 開啟BlackHole這個資料夾。
設定這個專案的SDK。然後編譯、debug、安裝到模擬器。
一個FlutterUnit專案,能很快檢視到各種flutter的UI介面程式碼。方便未來使用。
但是我在自己的m1 mac上使用的時候遇到問題,出現NDK。“No toolchains found in the NDK toolchains folder for ABI with prefix: arm-linux-androideabi”
通過google搜尋,找到類似問題,
https://github.com/flutter/flutter/issues/76393
但是解決方法都不完美,有的說把所有ndk都刪除了(這樣很不負責任)。
後來問了一個老哥,他說在local.properties裡面加入
ndk.dir=/User/alex/Library/Android/ndk/20.1.5948944
這裡我下載了4個版本的ndk,20,21,22,23
在FlutterUnit專案中,其中20,21,22都能執行,23不行。
我看了一個教程,https://developer.android.com/studio/projects/configure-agp-ndk
以為在build.gradle檔案中加入下面這個就行了
android { ndkPath "/Users/ndkPath/ndk21" // Point to your own NDK }
但是會報錯,gradle說不認識android這個選項。。。
所以,我還是走老路子,在local.properties裡面宣告 ndk.dir=/path/to/ndk
所以就成功了。作者的這個很棒,還帶了debug。真是周到。有幸還聯絡到了作者。
使用體驗是真的好。
debug也挺詳細的。M1的mac的風扇在狂轉,比較燙。swap交換佔用10GB 。哈哈哈
最後,送上一個好工具。
LibChecker - 應用架構檢視App
https://github.com/zhaobozhen/LibChecker
推薦一個開源專案:LibChecker ,它可以檢視你手機上已安裝的包詳細資訊,不看不知道,自己看看才知道現在跨平臺技術在現實中的運用情況,比如手機上應用使用 Flutter 、React Native 、Weex 的應用情況,所以可以看到,大前端和跨平臺已經深入到各種開發需求中。據說閒魚、微信也用了flutter的模組。
adb install libchecker.apk
看看什麼應用用了什麼技術
下載多個app,進行安裝拆包測試。
但是我發現直接adb install 微信是不行的。看看其他方法吧。不過微信也沒有什麼參考意義