liuxing1992 / swapFlutter

getx项目,包括适配,路由,扫码,google map,自定义marker,dio,组件封装,导航路径,登录注册,token重连,拨号,支付等(开发中...)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Flutter App

Support [√] Flutter (Channel stable, v2.5.2).Dart SDK version: 2.14.4(stable)

注意

1.本项目运行在 GETX,创建路由建议用以下命令:

get create page:xx

2.首页地图需要Goole service(科学上网)
3.接口数据为测试服mock,不会长期维护

目录结构

app
    ├─colors
    ├─common
    │  ├─langs
    │  ├─methods
    │  └─widgets
    ├─entities
    ├─middlewares
    ├─modules(按路由划分模块)
    │  └─home
    │      ├─apis
    │      ├─bindings
    │      ├─controllers
    │      ├─mixins
    │      └─views
    │          └─widgets
    ├─routes
    ├─store
    ├─utils
    │  ├─extensions
    │  └─http
    └─values

设置权限(项目中已配置)

谷歌地图

安卓:android-app-src-main-AndroidManifest.xml
<meta-data
  android:name="com.google.android.geo.API_KEY"
  android:value="这里填写自己的谷歌地图key"/>
IOS:ios-Runner-AppDelegate.swift
import GoogleMaps
GMSServices.provideAPIKey("这里填写自己的谷歌地图key")

定位

安卓:android-app-src-main-AndroidManifest.xml
  <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
  <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/>
IOS:ios-Runner-info.plist
  <key>NSLocationWhenInUseUsageDescription</key>
	<string>需要定位权限</string>

相机

安卓:android-app-src-main-AndroidManifest.xml
  <uses-permission android:name="android.permission.CAMERA" />
IOS:ios-Runner-info.plist
  <key>NSCameraUsageDescription</key>
	<string>This app requires access to the camera.</string>

已完成功能

  • 基于GetX的路由系统,依赖、状态管理
  • 基于 dio4.0网络请求封装
  • 自定义 Dialog/Toast
  • token添加,失效自动刷新
  • 登录/注册/获取验证码/退出登录
  • 修改昵称/收货地址
  • 个人中心
  • 客服中心/常见问题/拨打电话
  • 套餐卡券购买
  • 公告消息列表页面
  • 钱包余额
  • GoogleMap、market渲染
  • 获取用户实时定位
  • 商城页面/货物列表/上拉卡片/轮播
  • 扫码页面/扫描动画
  • 手动输入6位ID
  • 局部浮动弹窗

后续计划

  • 国际化翻译
  • 修改手机号
  • 更换用户头像
  • 扫码逻辑
  • ApplePay支付对接
  • 商城订单管理
  • GoogleMap地图运动轨迹

回馈和建议

如果你有更好的想法或者你想参与到这个项目中来,欢迎提交 PR!!

预览

部分页面效果如下:

About

getx项目,包括适配,路由,扫码,google map,自定义marker,dio,组件封装,导航路径,登录注册,token重连,拨号,支付等(开发中...)


Languages

Language:Dart 99.2%Language:HTML 0.5%Language:Ruby 0.2%Language:Swift 0.1%Language:Kotlin 0.0%Language:Objective-C 0.0%