flutter重構的鬥魚直播APP
首頁、娛樂爲Material組件;直播間、魚吧爲純自定義編寫。
另外整合各類優質的第三方開源庫,打造出原生APP絲滑的用戶體驗
儘可能接入更多功能,方法附帶註釋,幫助你在使用flutter進行開發新的應用提供實用的借鑑案例
包含功能:
- 啓動頁廣告位
- 開播列表上拉加載、下拉刷新、返回頂部
- 列表圖片緩存加載優化
- 漸進式頭部動畫
- 底部導航切換保存頁面狀態
- HTTP緩存、IO緩存
- 直播間webSocket消息彈幕、禮物
- 頁面路由傳值
- RxDart全局消息通信封裝
- Bloc流式狀態管理(啓動頁預加載首頁數據)
- 禮物橫幅動畫隊列
- 禮物全屏svga特效
- 彈幕消息滾動
- 靜態視頻流
- 九宮格抽獎遊戲
- 照片選擇器
- 全屏、半屏webView
- 魚吧頭部手勢動畫
- 仿微信朋友圈圖片控件
- 登錄註冊彈窗
- 國家區號列表(仿微信通訊錄滑動首字母定位)
- 二維碼掃碼
- 本地通知推送
- ...
- 持續增加中
APP截圖:
本地調試:
flutter run --release
打包發佈版本預覽
APP所有數據均來源Mock網絡請求,服務端接口沒有上雲,可修改lib/base.dart
中DYBase.baseHost
爲你的電腦IP,並確保手機與電腦在同一局域網且能訪問內網1236
端口
然後clone服務端倉庫,本地啓動服務器
Mock服務爲python tornado
,兩種簡單啓動方式可選(1.在py3.6+環境下pip依賴,2.使用Docker鏡像),具體參考其README
入門推薦:
Dart語法 - 語法中文教程
Flutter中文網 - 簡單易懂的入門教程
Flutter實戰 - 較爲全面的進階教程
Dart SDK(EN) - flutter中可用的SDK
Flutter官網(EN) - 可查閱全部的API與SDK相關
Bloc(EN) - 全局狀態管理