【#第一文档网# 导语】以下是®第一文档网的小编为您整理的《研究基于Android平台的健康记录系统客户端的实现与设计.docx》,欢迎阅读!
研究基于Android平台的健康记录系统客户端的实现与设计
随着通信产业的高速发展和互联网创新服务的不断出现,基于移动互联的App产业也迎来了高速发展期。移动互联网已成为全球公认的市场潜力最大,发展最迅速的创新平台之一。与此同时,随着外部环境如大范围雾霾、PM2.5等问题加大,人们生活压力不断增大,引发人们对于健康问题的关注。使人们迫切希望通过各种渠道了解养生、促进健康。与健康相关的APP产品受到大众的青睐。
目前基于移动平台,以Android平台为例,主要提供了自动计算路程、自动计算每天行走步数等健身软件。对健康指南和健康信息记录的软件还比较少。电子健康记录(Electronic Health Record,EHR),简言之就是个人的医疗保健信息的电子化存储,它是卫生信息领域重要的组成部分,目的是促进医疗活动效率、减少医疗差错并提高服务能力。电子健康记录十分必要也十分重要,可以通过记录及时发现问题,也为今后的就医提供有效的参考数据。
1 健康记录系统的总体设计
健康记录系统主要记录用户每天或一段时间内的血糖、血脂、血压数据,并把这些数据的变化绘制成曲线图,方便使用者了解一段时间内身体变化情况。当某项数据超出健康范围时,系统会根据预先设置好的数值进行循环语音播报,直到使用者点击“了解”按钮。通过语音播报能提醒使用者注意健康情况,更有效的提醒使用者关注健康。根据超出范围的数据系统还提供与之相应的健康指南,数据不在规定范围的危害、注意事项及饮食建议和就医建议。同时健康记录系统还提供了多种健康知识的文字和视频资料,让使用者了解更多的健康常识。
健康记录系统包括健康数值设置模块、健康数据添加模块、健康数据删除模块、健康数据修改模块及健康指南模块。其中健康数值设置模块分为血压、血糖、血脂数据设置和超范围语音提醒模块。健康指南模块又包括血压、血糖、血脂常识介绍及注意事项的音视频播放模块。
2 健康记录系统客户端设计与实现
健康记录系统客户端设计主要包括健康记录页面的UI设计,SQLite数据库连接,健康数据的增、删、改及语音播报和健康指南功能。
2.1 客户端首页UI设计
首页显示一段时间内的健康曲线图,以血压走势图为例。本模块首先连接数据库,从数据库中提取需要的数据,绘制成曲线图形。
2.1.1 绘制坐标轴
canvas.drawLine(X_OFFSET, HEIGHT, WIDTH, HEIGHT, p1);
canvas.drawLine(X_OFFSET, 20, X_OFFSET, HEIGHT, p1);
2.1.2 获取血压数据(以高血压为例)
for (int i=0; i < list1.size(); i++) {
Info temp=list1.get(i);list.add(temp.getUpbloodpressure());}
2.1.3 绘制血压走势(以高血压为例)
canvas.drawLine(X_OFFSET + 50 + 70 * i, (int) (550 - 2.5 * Double.valueOf(list.get(i))), X_OFFSET + 50 + 70 * (i + 1), (int) (550 - 2.5 * Double.valueOf(list.get(i + 1))),p1);
2.2 SQL数据库管理
由于健康记录系统只是记录个人健康数据,数据量比较小。所以使用了内置的SQLite数据库。Android系统提供了SQ Lite Datebase和SQLite Open Helper两个类实现数据库的连接和管理。创建类class My Sqlite extends SQLite Open Helper。实现数据库的创建、连接及对数据库的操作。
创建管理数据库:
public MySqlite (Context context) {super(context,"mydate",null,1);}
创建健康记录表:
db.execSQL("create table jk(jkId Integer primary key autoincrement, hypertension varchar(20), hypopiesia varchar(20), blood_sugar varchar(20), blood_fat varchar(20),date_time timestamp,note varchar(400))");
数据库的操作主要有保存健康记录、修改健康记录、删除健康记录等功能,通过相应的SQL语句来实现相应的操作。
保存健康记录的execSQL方式实现代码如下:
String sql=”insert into jk(hypertension, hypopiesia, blood_sugar, blood_fat,
date_time,note)values(“+H_xy+”,”+D_xy+”,”+xt+”,”+xz+”,”+date_time+”,”+note+”)”
db.execSQL(sql);
本文来源:https://www.dy1993.cn/c3jG.html