一种基于Android平台的远程监护报警系统的制作方法_4

文档序号:9728199阅读:来源:国知局
,其中account、passcode为监护者的账号密码,tel为监护者手机号码供接收预警短信使用,此三个数据不可为空,在注册时提交,bindname、binddevice为绑定时上传的绑定备注和绑定的被监护对象的设备号。3.根据权利要求2所述的基于Android平台的远程监护报警系统,其特征在于:所述监护端的功能实现包括以下步骤: 步骤一:创建一个数据类,该数据类包括需要用到的数据类型,然后对这些数据类型封装getter和setter,再将该数据类继承Applicat1n类,继承之后,打开配置文件AndroidManifest.xml,在 applicat1n 属性中追加:android:name =“com.lxylbs.data.AppData” ;其中com.lxylbs.data.AppData为所述数据类的位置;使用时实例化一个AppData对象,AppdatamAppData,再对该对象初始化,mAppData=(Appdata)context.getApplicat1nContext(),接着调用mAppData的getter和setter进行对数据的操作; 步骤二:编写BaseActivity基类,该基类声明为抽象的基类,基类里注册了整个应用会使用到的广播,类中只写了一个onReceive方法对接收到的广播的Act1n、stringExtra进行判断,并结合上述的全局变量类对数据进行存储操作,哪个Activity使用广播只需继承这个基类;该基类中包括一抽象方法为sendMsg(Stringmsg),改方法实现对其他activity的UI进行操作处理,msg参数为处理数据后的结果,在sendMsg中对UI进行操作,对全局变量类AppData进行数据的读写实现对Ac t i v i ty的调用的; 步骤三:开启WelcomeAcivity,其进行数据库的初始化操作,用BaseActivity中的Connect1nChangeReceiver广播监听网络变化,无网络时不对数据库进行操作并弹出Toast消息通知用户,网络不可用,WelcomeActivity使用Handle机制延时五秒后自动跳转至LoginActivity进行用户登陆; 步骤四:登陆成功后进入HomeActivity,HomeActivity为被监护对象定位、预警、绑定机设置各个功能的入口;HomeActivity直接所述数据库请求该账号绑定的被监护端设备信息,存入全局变量Appdata中,并将全局变量类中的IsBind状态设置成TRUE; 步骤五:进入绑定功能BindActivity,进入该Activity后应用首先去获取全局变量中该账号绑定的被监护对象的信息,信息不存在,则在页面上显示,无绑定设备,若有绑定设备信息,则将设备信息显示出来,需修改绑定号码时填写昵称、绑定对象的设备号提交,提交后输入的设备号在db_child_info表中查询是否存在该设备,若该设备存在,则将远程数据库db_myuser表中的该账号对用的bindneme,binddevice写入绑定时输用户填入的数据,并更新UI显示当前新绑定的设备对象,同时将全局变量的IsBind设置成TRU; 步骤六:进入定位Locat1nActivity,该Ativity分为两个模式,一个是被监护端定位模式,另一个为查看历史轨迹模式; 在被监护端定位模式中,使用Handler.postDelayed(this,10000),在runnable中再次调动该方法同时去获取远程数据被监护端的位置信息,实现对被监护对象的实时更新,获得位置后,使用Amap提供的Marker方法在地图上画出坐标,画坐标的方法封装成一个函数在函数调用时将之前画的marker标记Remove掉,这样就不会造成一个地图界面出现好多个marker的现象出现; 在查看历史轨迹的模式中,监护端去获取被监护端的locat1n_path,再使用得到的ur 1去访问得到文件,读取分析文件获取带有历史坐标的Array 1 ist,其中Array 1 i st中存放的类型为Latlng,ArrayList〈LatLng>,准备好历史坐标后,在地图中使用AMap.addPo ly line (Poly lineOpt 1ns)进行绘制折线,poly l1neOpt 1ns 对象可设置线条宽度、颜色、画的Latlng坐标,直接使用PolylineOpt1ns.addal 1(Arraylist〈latlng〉)放入坐标集合; 步骤七:进入预警功能,先进行初始化界面操作,MapView做地图界面的显示,监护端先向服务器请求绑定设备数据表中的的alarmlocat1n和radius参数,如果参数不为空,贝1J以alarmlocat1n为中心坐标,radius为半径画出被绑定设备的预警范围,如果为空则不处理; 将地图的中心点设置为当前的监护者的位置:使用Locat i onManagerProxy,调用该对象的requestLocat1nData(Locat1nProviderProxy.AMapNetwork,60*1000,15,this),其中第一个参数表示定位的类型,这里是混合定位,当GPS数据优先返回时使用GPS数据,当LBS数据优先返回时使用LBS数据,同时返回时则使用GPS数据,第二个参数为每次获取位置的间隔,第三个参数为移动15米,获取位置信息;调用后,在必须重写的onLocat1nChanged写入后续操作,这里直接修改地图中心点并画出marker; 预警功能中心点的获取:对Amap设置单击事件监听:aMap.setOnMapClickListener();点击后我们将点击获取的坐标致Latlng直接在地图界面上做显示,同时在Editext中输入半径,提交时,将所设定的值update到db_chi ld_info中对应的绑定设备。4.根据权利要求2所述的基于Android平台的远程监护报警系统,其特征在于:所述被监护端的功能实现包括以下步骤:征求用户同意后,直接获取被监护端的设备号,更新到被监护端的数据库中,同时开启Service服务,与后台服务器交换数据信息;Service服务每5秒向服务器数据库发送本机位置信息,发送的位置信息包含位置更新时间Uloadtime及位置的经玮度坐标locat 1n,每五分钟向服务器数据库发送包含历史位置信息的locat1n, txt文档,内嵌的位置信息格式与发送至数据库的信息格式一致; 在发送位置信息的同时,判断该被监护端的所对应设备id在db_chi ld_inf ο中alarmlocat和radius的值是否为空,不为空则获取数据存入应用全局变量中,再使用Floatdistance=AMapUtils.calculateLineDistance(startLatlng,endLatLng),计算出当前位置作标和设置的预警中心坐标的距离,其方法返回的数值单位为m,直接同设置的预警半径radius进行大小的判断,在对比前,应用设置了标志位,通过标志位判断是否发送短信,设定发送短信的条件为被监护对象进行跨界动作时便向监护端发送。5.根据权利要求3或4所述的基于Android平台的远程监护报警系统,其特征在于:所使用的地图为高德地图,高德地图的应用包括以下步骤:首先登陆高德LBS开放平台:http://lbs.amap.com/,注册成为开发者;登陆后,进入控制台界面获取key,在弹出界面中输入移动应用的名称,选择使用的高德地图的服务的Andor i dSDK,在包名选项中填入应用的包名,所述包名必须与移动应用工程中AndroidManifest.xml配置文件里的包名一致;在安全码一栏中填入§從1值,其获取方式为在6(311口86中选择11冊01菜单,选择菜单中?代€6以11068选项,点击andorid的Build项即可查看获取key;之后,同样再次打开应用工程AndroidManifest.xml 配置文件,在 applicat1n 中添加属性: <meta-dataandro i d:name=〃com.amap.ap1.v2.apikey" android:value=//6elac06c9482f57bf61592e2e79alffaV>; 其中value的值为所申请的key。
【专利摘要】本发明提供一种基于Android平台的远程监护报警系统,其特征在于:包括被监护端、监护端及数据库;所述被监护端具有以下功能:绑定用户信息;实时更新预警范围、报警;自我定位、一键呼救;查看绑定信息;监护端具有以下功能:用户注册登录;查询被监护端位置信息;设置预警区域;绑定、修改被监护端账号;所述数据库具有以下功能:向被监护端及监护端提供数据操作接口;需新建在两个表单,一个存储所有被监护端信息,另一个存储所有监护端设备信息。本发明具有可移植性强,可以在多种终端设备使用,不依赖外部硬件,不会发生因为硬件某芯片更换而导致软件部分需重构的问题,功能可拓展性高等优点。
【IPC分类】G08B21/02
【公开号】CN105488949
【申请号】CN201510928813
【发明人】李兰兰, 李祥扬
【申请人】福州大学
【公开日】2016年4月13日
【申请日】2015年12月15日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1