热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

android打卡统计日历表,GitHublw1243925457/clickApp:一个日常事务打卡和统计的APP,用于日常任务记录、任务所需时间记录、任务花费时间统计显示...

目标打卡APP时间管理类型APP,目前功能较少,有基本的目标清单、目标花费时间记录、花费时间统计展示右侧release已发布编译好的安装包,

目标打卡APP

时间管理类型APP,目前功能较少,有基本的目标清单、目标花费时间记录、花费时间统计展示

右侧release已发布编译好的安装包,可进行下载

有需要的小伙伴,可以自行拉取进行自己的特定需求开发

开发由来

在学习的工程中,想用APP

将其记录下面,每日或每周重复打卡记录,类似于列清单。用手机软件就比较方便,但市面上的那些软件都没有符合我的需求的,有的还要付费......

感觉这种东西写起来应该不难,就学习用flutter写了一个。

注意的功能就是可以无限制列任务清单、记录任务进行的所用时间,后面并对所有时间进行了图标展示,便于了解时间上的效率情况

界面

基本界面如下:

任务列表展示界面

展示任务列表,右上角分别是统计详情按钮和任务添加按钮;任务三个按钮分别是打开按钮(每日任务完成后点击后变完成按钮,任意切换),任务计时开始按钮,任务计时停止按钮

233a621b9cd28ff43acc652a5df6e52a.png

任务信息展示界面

任务信息页面,这里可以对现有的任务进行修改和删除

a2590c95ba3deb97dd3d478c1efab076.png

任务花费时间统计(饼图、柱状图、详情记录)

任务花费时间统计显示,右上角分别是人工录入记录按钮(第一个是任务列表中不存在的任务,用于记录临时的一次性任务,第二个是已有任务的记录添加),第三按钮是记录情况按钮,慎用!

e83e6808115d219999516b3fd7d93556.png

d8220bf5aea17d0294594e8757d72624.png

ccdea054bdc91ae7f12239e2be8c1c17.png

数据结构相关(目前版本先采用本地存储)

本地存储数据格式

打卡任务属性定义:taskProperty.log

用map-list-map三层结构进行存储,一层map区分任务类型,二层list放任务数组,三层放任务定义

{

"daily":[

{

"name": "任务名称",

"cycleTime": [false, false, false, false, false, false, false], //每日任务执行时间,周1(数组元素0)为true

"moduleId": "所属模块名称",

"lastComplete": "最后完成日期",

"isComplete": "当天是否完成",

"type": "任务类型,每日daily,每周week,临时temp"

}

],

"week": .......,

"temp": .......,

}

任务统计:taskStatistics.log

用map-list两层结构进行存储,一层map使用当天年月日作为key,用于存储当天产生的统计记录,后期便于查询统计操作

{

"日期": [

{"taskName": "任务名称", "moduleName": "模块名称", "second": "秒", "begin": "任务开始时间", "end": "任务结束时间"}

]

}

本地编译与安装使用

程序在Android Studio运行后,在 build/app/outputs/apt/release/app.apk,传到手机上安装即可:

停留在程序入口文件处(Main)

上方菜单栏:Build/Flutter/Build APK

等待运行完成即可

代码结构说明

- lib // 所有的源码都在这个目录下

- model // 放置基本数据模型(方法和属性)

- tools // 这里主要放置数据持有单例、任务时间花费统计操作类、任务计时类

- view // 这里放置页面视图

- main.dart

发布日志

2020.10.4:V1.0.0版本完成,主要功能如下

任务新增、查看、修改、删除

任务计时、自定义计时(计时时软件突然退出的补救)

任务用时柱状图、饼图、详情查看

下个可能的需求开发

任务提醒功能:没一个小时提醒 / 定点提醒

删除任务时提示确认/必要操作的提示确认

在任务模块下有开始计时和结束计时功能,新增提示休息功能,如工作45,休息5(可自定义)统计累计耗时

可以新增任务模块

查看了相关软件,有一些想法,有空的时候再搞搞:有哪些时间管理类的 App 推荐?

错误与修复

Failed to install the following Android SDK packages as some licences have not been accepted.

使用命令:flutter doctor --android-licenses

参考链接



推荐阅读
  • Go GUIlxn/walk 学习3.菜单栏和工具栏的具体实现
    本文介绍了使用Go语言的GUI库lxn/walk实现菜单栏和工具栏的具体方法,包括消息窗口的产生、文件放置动作响应和提示框的应用。部分代码来自上一篇博客和lxn/walk官方示例。文章提供了学习GUI开发的实际案例和代码示例。 ... [详细]
  • 本文介绍了一种轻巧方便的工具——集算器,通过使用集算器可以将文本日志变成结构化数据,然后可以使用SQL式查询。集算器利用集算语言的优点,将日志内容结构化为数据表结构,SPL支持直接对结构化的文件进行SQL查询,不再需要安装配置第三方数据库软件。本文还详细介绍了具体的实施过程。 ... [详细]
  • flutter图片缓存Flutter的图片缓存机制有问题(可能是我使用的版本1.12.13有问题)网络图片会默认缓存到本地,但是不管图片是不是完整的或者损坏的,导致页面在下次进入的 ... [详细]
  • 在Kubernetes上部署JupyterHub的步骤和实验依赖
    本文介绍了在Kubernetes上部署JupyterHub的步骤和实验所需的依赖,包括安装Docker和K8s,使用kubeadm进行安装,以及更新下载的镜像等。 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • Webpack5内置处理图片资源的配置方法
    本文介绍了在Webpack5中处理图片资源的配置方法。在Webpack4中,我们需要使用file-loader和url-loader来处理图片资源,但是在Webpack5中,这两个Loader的功能已经被内置到Webpack中,我们只需要简单配置即可实现图片资源的处理。本文还介绍了一些常用的配置方法,如匹配不同类型的图片文件、设置输出路径等。通过本文的学习,读者可以快速掌握Webpack5处理图片资源的方法。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • 本文介绍了在Vue项目中如何结合Element UI解决连续上传多张图片及图片编辑的问题。作者强调了在编码前要明确需求和所需要的结果,并详细描述了自己的代码实现过程。 ... [详细]
  • 本文介绍了Linux Shell中括号和整数扩展的使用方法,包括命令组、命令替换、初始化数组以及算术表达式和逻辑判断的相关内容。括号中的命令将会在新开的子shell中顺序执行,括号中的变量不能被脚本余下的部分使用。命令替换可以用于将命令的标准输出作为另一个命令的输入。括号中的运算符和表达式符合C语言运算规则,可以用在整数扩展中进行算术计算和逻辑判断。 ... [详细]
  • 超级简单加解密工具的方案和功能
    本文介绍了一个超级简单的加解密工具的方案和功能。该工具可以读取文件头,并根据特定长度进行加密,加密后将加密部分写入源文件。同时,该工具也支持解密操作。加密和解密过程是可逆的。本文还提到了一些相关的功能和使用方法,并给出了Python代码示例。 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了Flutter添加APP启动StoryView相关的知识,希望对你有一定的参考价值。 ... [详细]
author-avatar
天堂寨旅游2013_668
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有