APP下载

基于Android系统的公众服务智能APP开发研究

2021-03-03高俊男胡树煜

中国管理信息化 2021年1期
关键词:开发公众服务

高俊男 胡树煜

[摘    要] 本文通过对公众服务平台的APP应用程序分析,设计了A/S系统架构模式、数据库和Android环境架设方式,用Activity实现页面操作、用Intent传递信息、用Vibrator实现用药提醒、用SensorManager实现血压和心率测量,完成了APP主体功能的构建,对其他APP程序开发起到了导引作用,具有较高的推广价值。

[关键词] Android;公众;服务;APP;开发

doi : 10 . 3969 / j . issn . 1673 - 0194 . 2021. 01. 048

[中图分类号] TP315    [文献标识码]  A      [文章编号]  1673 - 0194(2021)01- 0119- 03

0      引    言

5G时代的到来,使移动互联网高速发展,智能终端的使用,更成为人们生活中必不可少的一部分。APP(Application)是指安装在智能终端上的应用软件,使智能终端功能全面化,使用方便化,成为人们处理数据信息业务的主要途径之一。

公众服务平台是根据特定用户的共同需求,在一定时期内,进行组织、整合、集成、优化各类软硬件资源,提供可共享的设施、设备、服务等共享资源的环境,达到用户需求目的的一种特定的解决方案。公众服务平台具有基础性、开放性和公益性特征。老年慢性病社区护理服务平台是一种公益性的公众服务平台,使用APP为老年慢性病患者提供社区护理服务,更能快速高效的达到服务目的和標准,具有重要的现实意义,下面以此平台为例进行描述公众服务类APP的开发过程。

1      系统需求分析

老年人由于生理功能减退、抵抗力下降、各项健康指标不达标,容易患上久治不愈的慢性病,老年人的健康水平受到社会各界的普遍关注。慢性病的问题是众多老年人生活中的最大阻碍,对于老年人的慢性病的护理是当前护理研究中最重要的组成部分。基于Android的老年慢性病管理服务APP,不仅可以快捷方便的为老年人提供经济实惠的高品质服务,更是提高生活质量,促进社会和谐发展的有效途径,在老年人品质生活中具有大量的需求,在现实生活中具有重要的积极的意义。

2      系统设计

2.1   系统架构

采用A/S(APP/Server,APP应用/服务器)模式是基于C/S(Client/Server,客户端/服务器)模式的扩展模式,是APP应用程序作为客户端与服务器进行数据交换的一种模式,如图1所示,服务器上配置资源,搭载Android运行环境,开发的老年慢性病管理服务公众平台基于服务器运行,平台的所有数据通过服务器和数据管道与数据库进行交互,进行存储、查询、修改等数据操作,在公众服务平台上嵌入智能APP应用,用户通过智能手机、平板等终端设备下载、安装、应用APP上的服务和功能。

2.2   数据库

MySQL是一种关系数据库管理系统,从上市以来它的开源性、多线程、多用户、良好的图形界面等特性,一直受到广大用户的欢迎,使SQL结构化查询语言操作更加方便、快捷。

我们使用Windows系统,安装MySQL 8.0版本,另外还需要安装它的图形化用户界面工具:数据库管理MySQL Administrator、数据查询MySQL Query Browser、数据迁移MySQL Migration Toolkit。

MySQL使用前需要进行配置,进行系统配置时,选择默认参数即可,操作简单,后期如果需要调整参数时,可以使用MySQL Server Instance Config Wizard工具进行修改即可。

安装和配置好MySQL后,它会以Windows服务的形式存在,在服务管理器中对MySQL进行启动应用即可。

2.3   Android环境架设

Android是基于Linux开放性内核的手机操作系统,最初是由Android公司开发,2005年被谷歌收购。Android平台的开放性,自其上市以来就受到客户群体的欢迎,其中在2011年的时候就在市场占有率中占有绝对优势,击败诺基亚的“塞班”系统成为领头羊。目前,Android已经成为主流手机操作系统,并占有持续性优势。在系统的使用中,目前已经走向了各种智能领域,包括了智能手机、智能电视以及平板电脑等。

Android Studio是个新的开发环境,与早期开发App使用Eclipse相比,拥有更强大的功能和更高效的性能。本次开发使用Android Studio 9.0版本,在安装前需要安装JDK(Java Development Kit),JDK是Java的编译器,因为Android应用是使用Java语言开发编写的,所以先要安装JDK作为编译器。另外还需要安装NDK(Native Development Kit),NDK是C/C++代码的编译器,主要用于接口使用。

Android Studio安装后,还需要下载安装软件开发工具包SDK(Software Development Kit),便于后续开发工作。

安装完成后,可以使用USB接口连接真实手机的方式、Android SDK提供的Android Virtual Device(AVD)虚拟手机方式、安装第三方模拟器(如Genymotion模拟器)方式来运行环境。

3      功能实现

3.1   用Activity实现页面操作

在页面设计中,根据视觉注意力聚焦点,把重要内容放在人们集中关注的左中上部。一个Activity代表一个页面,我们可以通过调用Activity的onCreate方法可以建立函数的入口来实现页面操作过程, AMS是通过ActivitvStack和其他数据结构,来记录、管理、查询Activity的一个系统服务,主要是以创建页面(onCreate)、开始页面(onStart)、恢复页面(onResume)、暂停页面(onPause)、停止页面(onStop)、销毁页面(onDestroy)、重启页面(onRestart)几个操作为中心进行,例如,从ActAActivity页面跳转到ActBActivity页面的顺序是:

A页面onPause→B页面onCreate→onStart→onResume→A页面onStop

代码实现如下:

@Override

protected void onStop() {  //停止活动页面

refreshLife("onStop");

super.onStop();

}

@Override

protected void onCreate(Bundle savedInstanceState){  //创建活劝页面

super.onCreate(savedlnstanceState);

setContentView(R.layout.activiry_ act_jump);

findViewById(R.id.btn_act_ next).setOnClickListener(this);

tv_ life=findViewById(R.id.tv_ life);

refreshLife("onCreate");

}

……

另外,也可以通過调用Activity的startActivity方法实现页面跳转。

3.2   用Intent传递信息

Intent主要用来传递信息,可以Android的各组件Activity、Service、Broadcast之间进行通信。Intent采用显式和隐式方式来表达路径方式。显式Intent属于精确匹配,直接指定来源类与目标类名,清晰明确,一般通过构造函数、setClass方法、setComponent方法来指定,代码如下:

Intent intent=new Intent();//创建一个新意图

ComponzntName component=new ComponentName(this, ActResponseActivity.class);

intent.setComnonent(comnonent);//设置意图携带的组件信息

隐式Intent属于模糊匹配,并不给出明确指定要跳转的类名,只给出一个动作让系统匹配拥有相同字串的目标,这个动作一般通过setAction方法、构造函数Intent(String action)指定,APP中调用系统拨号程序代码如下设计:

Intent intent = new Intent();//创建一个新意图

intent.setAction(Intent.ACTTON_CALL);//设置直接拨号为意图动作

Uri uri=Uri.parse("tel:" + phone);//声明拨号的Uri

intent. setData(uri);//设置意图前往的路径

startActivity(intent);//启动意图通往的话动页面

3.3   用Vibrator实现用药提醒

老年人用药可以利用手机震动功能提醒,在Android的VIBRATOR_SERVICE服务中有一个震动器Vibrator,可以完成我们所需要的功能,在AndroidManifest.xml 中加上权限,否则无法使用震动器,代码如下:

<!--震动-->

控制手机震动的代码如下:

Vibrator vibrator= (Vibrator) getSystemServicer(Context. VIBRATOR_SERVICE);//从系统服务中获取震动器

vibrator.vibrate(10000);//设置震动器震动10秒

3.4   用SensorManager实现血压和心率测量

Android系统提供了传感器功能,使用SensorManager控件进行注册后使用,测量血压可以使用压力传感器,代码设计如下:

public class MainActivity extends Activity implements SensorEventListener

{

private TextView etPressure;//定义压力管理器

@Override

protected void onCreate(Bundle savedInstanceState)

{

super.onCreate(savedInstanceState);

setContentView(R.layout.activity main);//获取界面上的TextView组件

etPressure=findViewById(R.id.etPressure);

mSensorManager=(SensorManager)

getSystemService(Context.SENSOR SERVICE);//获取传感器管理服务

}

@Override

public void onResume()

{

mSensorManager .registerListener(this,

mSensorManager.getDefaultSensor(Sensor.TYPE_PRESSURE),

SensorManager .SENSOR DELAY GAME);

}

@Override

public void onAccuracyChanged(Sensor sensor, int accuracy)

@Override

public void onSensorChanged(SensorEvent event)

{

s=new  StringBuilder();

s.append (“当前血压为:”);

s.append (values[0]);

etPressure·setText(s.toString());

break;

……

心率判断可以通过android.permission.BODY SENSORS获得权限,通过SensorEvent的accuracy属性判断是否准确,如果该属性值为SENSOR_ STATUS_ UNRELIABLE或SENSOR STATUS NO CONTACT,则表明传感器返回的心率值是不太可靠的,应该丢弃。

4      結    语

随着智能手机的不断革新,APP现在已经成为附带的主流应用工具,老年慢性病社区护理服务平台的开发是公众服务平台开发中最典型的应用,具有一定的代表性,在后期的实践应用中会不断完善其功能。Android系统开发具有开放性、普遍性,通过本文的架构,希望带给大家更多的创作灵感,开发出更高效、实用的APP程序。

主要参考文献

[1]赵娟.基于Android的人脸识别系统开发[J].中国管理信息化,2020(11):184-186.

[2]傅天泓.基于Android的掌上医院APP的设计与实现[J].安徽电子信息职业技术学院学报,2019(6):1-5.

[3]韩旭.基于Android的出行助手App的设计与实现[J].电子世界,2018(24):194,196.

[4]潘庆红,黎明,宁金伟.基于Android的“家校通”APP设计与实现[J].湖南科技学院学报,2018(10):85-88.

猜你喜欢

开发公众服务
公众号3月热榜
公众号9月热榜
公众号8月热榜
公众号5月热榜
服务在身边 健康每一天
服务在身边 健康每一天
服务在身边 健康每一天
招行30年:从“满意服务”到“感动服务”
河南方言文化资源的保护及其开发利用的研究
遵义红色旅游开发对策研究