
Flutter錄音APP
一個錄音小工具,github地址,
1.語言環境
Flutter SDK : stable 2.0.6
Dart SDK: stable 2.12.3
2.專案截圖



3.開源軟體包
flutter_sound: ^8.1.9 #錄音+轉MP3
path_provider: ^2.0.1 #獲取檔案路徑
dio: ^4.0.0 #發送網路請求
permission_handler: ^8.1.3 #請求錄音權限
4.開發流程簡述
- 檢測錄音權限是否開啟,未開啟會在APP內請求權限,將用戶輸入的ID傳遞到歌曲串列畫面,
- 歌曲串列畫面呼叫兩個介面,一個介面獲取當前賬戶錄過多少首歌曲,一個介面獲取歌曲串列,滑動串列為ListView,請求錯誤時彈出POP框,點擊歌曲進入到錄音頁面,
- 錄音頁面展示的資料均為串列畫面通過構造方法傳入,呼叫flutter_sound包錄音,錄音結束后將acc轉換為MP3,點擊上傳呼叫介面,通過FormData上傳本地的MP3檔案,請求錯誤彈出POP,
5.專案總結
技術上來說沒有什么難點,沒有引入過多的第三方軟體包,網路請求,路由跳轉,頁面間傳值都沒有進行額外的封裝,產品的原型也比較簡單,沒有設計圖,比較大的識訓是熟悉了一下FLutter專案android和IOS的打包,
android打包,命令:flutter build apk --split-per-abi,默認打包方式就是release,flutter build apk打出來的包特別大,因為多種架構模式的安卓包都打在一起了,加上--split-per-abi會把不同架構的包分開打,"armeabi-v7a", "arm64-v8a"是比較主流的,安卓也可以單獨打開專案中的android檔案夾,使用原生的方式進行打包,在app/build.gradle添加ndk配置,將主流的CPU架構打到一個包里,有兩個地方需要特別注意,一是打包時signature中的V1和V2都需要勾選上,為了適配低版本安卓,二是app/build.gradle中的minSdkVersion決定了兼容的安卓版本,21適配安卓5.0,
IOS打包,IOS打包比較復雜,推薦一篇文章,文章有些內容有點過時,不過大部分流程都覆寫到了,簡單描述一下就是在Xcode中配置好,然后flutter build ipa ,生成一個Runner.xcarchive檔案,雙擊xcarchive檔案一直Next生成IPA,如果不發布到app store,需要先拿到用戶的UDID,添加到Devices,然后按照官網推薦的方式獲取證書Certificates,Certificates就是給開發用的電腦裝的,然后生成Profiles選中Devices和Certificates,在打包時選中生成的Profiles,如果發布到app store就不需要Profiles,選中Signing選項卡里的Automatically manage signing就可以了,Certificates是必須要安裝的,
第二版提升了一下錄音的音質,將采樣率改成了96000,將位元率改成了256000.

轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/316057.html
標籤:其他
