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

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

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

相关推荐
茶底世界之下8 小时前
花瓣要更柔和,还是更有反差?用 Awaking 做一次对比度取舍
ios
yuanlaile1 天前
2026年全新Flutter 跨平台开发全栈学习资料整理
flutter·getx·鸿蒙 next·flutter开发鸿蒙·flutter入门实战·flutter全栈
Anhty1 天前
2026最新免费手机音频处理工具 !!
android·功能测试·ios·智能手机·音视频
2501_915909061 天前
iOS应用从开发到上架App Store的完整发布流程与步骤指南
android·ios·小程序·https·uni-app·webview
初雪云1 天前
UniApp 云打包拿到 IPA 后,真正的发布工作才刚开始
ios·自动化·编辑器·产品经理·iphone
Lancker1 天前
没有 Mac 也能上架 iOS:GitHub Actions 全自动构建 + 签名 + TestFlight 送审实录
macos·ios·github
茶底世界之下1 天前
晚霞要多暖?用 Awaking 只改色温做一次取舍
ios
恋猫de小郭1 天前
Genkit Dart 1.0 发布,Flutter 原生的 AI Agent 终于完整了
android·前端·flutter
第10086个小白1 天前
flutter桌面端打包方式(Inno Setup Compiler)版本
前端·flutter
酒神dnspup1 天前
多地区网站可用性监控怎么做?DNSPup 从基线到告警的完整实战
运维·ios·云计算·iphone·dns·网络监控