Flutter 日记APP-开篇

序言

在跟着wendux大佬的书学习flutter后,开始着手写个app进行实战。考虑到没有服务器,所以主要写工具类,无网络交互的app。之前看了《小狗钱钱》这本书,里面的梦想笔记让我印象深刻,便开始着手写一个记录自己梦想笔记的app。

App 构想

  1. 创建自己的梦想
    1.1 梦想内容和描述
    1.2 梦想日记提醒时间,开启后会设置闹钟定时提醒
  2. 创建梦想日记
    2.1 日记标题和内容
    2.2 为了方便日记输入,接入苹果的文本扫描功能
    2.3 日记每天可多次添加或修改
  3. 日记走势
    3.1 根据每天记录的日记数量进行统计,展示一个charts图
  4. 设置功能
    4.1 支持日夜模式
    4.2 支持国际化语言切换

目前大概就这些后面准备持续更新日记内容,比如新增记账日记,记录每一笔开销和收入,然后统计每月的开销和收入,让自己对于自己的账目管理更加一目了然;还有行程记录,比如出行提醒,旅游日记等等。为了后面更好的兼容,在开始构建的时候会预留相应的字段。

App 三方选择

  1. get
    状态管理、国际化、皮肤管理于一体的三方库。当然还有其他功能,目前app比较简单仅使用这些。在选择的时候也在犹豫,要不要用BlocProvider,相对来说,另外两个三方要更加轻量一些,provider的侵入性也没有那么强。最后选择get 是考虑到国际化管理和换肤等,使用get一步到位。比如国际化通常会用intl
  2. sqflite
    用于数据存储,把日记都保存到本地数据库进行缓存。
  3. shared_preferences 本地轻量数据缓存,主要是用来存语言国际化等配置信息。
  4. easy_refresh
    上拉刷新,下拉加载
  5. fluttertoast
    Toast 弹窗,需要注意如果兼容其他平台(window)的话需要传入context。

剩下的就是更新库到本地,传统技艺:put get

基本上就是用了这些,可以说麻雀虽小,五脏俱全。后面会持续分享app的开发进度,和一些开发中遇到的问题。

相关推荐
FungLeo3 小时前
Flutter 吸顶分组列表实战:语义桶分组 + 点击头平滑滚动
android·flutter
FungLeo4 小时前
Flutter 超长 StatefulWidget 拆分术:part of + extension on State 实战
android·flutter·dart
GitLqr6 小时前
Impeller 时代:Shader Jank 消失了,但渲染性能的战场也变了
flutter·面试·性能优化
恋猫de小郭9 小时前
Flutter 的另外一种形态?社区 DartNative 要来了。
android·前端·flutter
CHB1 天前
uni-app x 蒸汽模式 性能测试基准报告 Benchmark【Android版】
android·ios·uni-app
阿里云云原生1 天前
还原一次用户等待:深度解析 Flutter RUM SDK 如何打通 Dart 到 Native 的观测链路
flutter
Magic-ZYJ1 天前
不登录、不联网也能用:我是如何设计一款“本地优先”iOS App 的
ios·app·iphone·研发·独立开发者·心情日记
_阿南_1 天前
flutter 展示的字体突然奔放了
android·flutter·ios
GitLqr1 天前
玩转 Dart typedef:不仅是函数别名那么简单
flutter·面试·dart
90后的晨仔1 天前
你的 iOS 最低部署版本即将不再被 App Store 接受
ios