Flutter + Native混合棧仿餓了麼APP

混凝土瞬間移動師 發表於 2020-05-10

前言

一個基於Flutter + Native混合開發的APP,請求資料均人為製造。

目前僅上傳Android版本,iOS暫未上傳
APK下載

Github地址

效果圖:

Flutter + Native混合棧仿餓了麼APP
Flutter + Native混合棧仿餓了麼APP
Flutter + Native混合棧仿餓了麼APP
Flutter + Native混合棧仿餓了麼APP

實現功能:

  • 首頁
    使用百度定位SDK獲取使用者位置資訊;搜尋功能基於百度語音SDK實現語音識別;騎手送餐介面基於百度地圖SDK展示騎手和商鋪覆蓋物;
  • 發現
    使用瀑布流開源框架實現發現頁面瀑布流效果
  • 訂單
    展示使用者歷史訂單列表,長按可刪除訂單
  • 我的
    使用Channel呼叫Native方法實現的使用者更換頭像功能(呼叫系統相簿、系統相機、系統裁剪)
  • 其他功能
    網路請求失敗重試;自定義Banner廣告輪播器;點餐介面計數器位移旋轉組合動畫;自定義商鋪詳情介面門店介紹展開收縮控制元件

框架依賴

Flutter端

# 圖片快取框架
cached_network_image: ^2.0.0
# 瀏覽器框架
webview_flutter: ^0.3.19+9
# 瀑布流框架
flutter_staggered_grid_view: ^0.3.0
# 網路請求框架
dio: ^3.0.0
# 阿里混合棧框架
flutter_boost:
git:
  url: 'https://github.com/alibaba/flutter_boost.git'
  ref: '1.12.13'
複製程式碼

Android端

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.aar', '*.jar'], exclude: [])
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation 'androidx.appcompat:appcompat:1.1.0'
    implementation 'androidx.core:core-ktx:1.2.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test.ext:junit:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
    // Android Flutter 混編步驟三
    implementation project(':flutter')
    // 依賴阿里混合棧框架
    implementation project(':flutter_boost')
}
複製程式碼