Android平台北斗星历服务控制方法及系统与流程

文档序号:11234806阅读:1032来源:国知局
Android平台北斗星历服务控制方法及系统与流程

本发明涉及北斗星历服务技术领域,特别涉及一种android平台北斗星历服务控制方法及系统。



背景技术:

北斗定位系统主要用于车载设备和军事装备,随着移动终端行业的蓬勃发展,手机行业与传统终端设备行业的不断融合,手机搭载北斗定位系统已经成为众多行业终端设备的标配。目前北斗卫星数量有限,定位相对困难,加强北斗天线信号会干扰手机正常通讯。截至目前,尚未出现在android手机上实现北斗星历服务控制的相关技术方案。



技术实现要素:

本发明的目的旨在至少解决所述技术缺陷之一。

为此,本发明的目的在于提出一种android平台北斗星历服务控制方法及系统,可以通过移动数据网络将星历数据实时下载到本地数据库,并适时下发给北斗定位模块,以缩短冷启动和跟踪定位时间。

为了实现上述目的,本发明的实施例提供一种android平台北斗星历服务控制方法,包括如下步骤:

步骤s1,安装有android系统的终端设备监测是否开启以下功能:北斗定位模块是否开启、移动数据或wifi功能是否开启;如果监测开启,则执行步骤s2;

步骤s2,所述终端设备与星历服务器建立连接;

步骤s3,所述终端设备从所述星历服务器上自动下载星历数据,并存储至本地的星历数据库,其中,所述星历数据的下载方式包括:立即下载和定时下载;

步骤s4,当判断收到接收到预定的系统事件或星历服务事件时,根据需要下载的星历数据更新所述星历数据库,从所述星历数据库中读取星历数据并同时发送至所述北斗定位模块使用。

进一步,在所述步骤s1中,北斗定位模块至少提供以下功能之一:北斗独立定位、gps独立定位、北斗与gps组合定位模式。

进一步,在所述步骤s3中,所述星历数据的下载方式,包括:

(1)立即下载:

当所述星历数据库中没有数据时,第一次启动系统服务或服务数据被清除,创建本地数据库,没有星历数据记录,需要立即下载;

当数据库中星历数据已经失效时,检查当前系统时间与星历数据修改时间的差,如果小于0或大于1小时,认为星历已经失效,修改系统日期时间或长时间关闭北斗定位功能都会导致星历数据失效,需要立即下载。

(2)定时下载;

北斗星历服务启动后或星历数据下载完成后,星历服务根据系统时间计算出到下一个整点的时长,启动定时唤醒手机系统服务;当整点到达时,系统被唤醒并发出定时下载消息,北斗星历服务在收到定时下载消息时,下载星历数据。

进一步,在所述步骤s3中,采用blob类型保存二进制星历数据,采用整数类型保存星历数据长度,采用文本类型保存创建时间和修改时间。

进一步,在所述步骤s4中,所述预定的系统事件包括:

网络连接事件:当网络开关打开时收到;

系统启动完成事件:手机开机后收到;

设置日期时间事件:用户设置系统时间收到。

进一步,所述星历服务事件在北斗模块启动、清除星历数据、冷启动、导航开始工况收到;北斗模块切换工作模式,北斗独立定位、gps独立定位、北斗与gps组合定位模式切换时收到。

本发明还提出一种android平台北斗星历服务控制系统,包括:安装有android系统的终端设备和星历服务器,其中,所述终端设备内置有北斗定位模块,

所述终端设备用于监测是否开启以下功能:北斗定位模块是否开启、移动数据或wifi功能是否开启,如果开启则所述终端设备与所述星历服务器建立连接;

所述终端设备从所述星历服务器上自动下载星历数据,并存储至本地的星历数据库,其中,所述星历数据的下载方式包括:立即下载和定时下载;

所述终端设备在判断收到接收到预定的系统事件或星历服务事件时,根据需要下载的星历数据更新所述星历数据库,从所述星历数据库中读取星历数据并同时发送至所述北斗定位模块使用。

进一步,所述北斗定位模块至少提供以下功能之一:北斗独立定位、gps独立定位、北斗与gps组合定位模式。

进一步,所述星历数据的下载方式,包括:

(1)立即下载:

当所述星历数据库中没有数据时,第一次启动系统服务或服务数据被清除,创建本地数据库,没有星历数据记录,需要立即下载;

当数据库中星历数据已经失效时,检查当前系统时间与星历数据修改时间的差,如果小于0或大于1小时,认为星历已经失效,修改系统日期时间或长时间关闭北斗定位功能都会导致星历数据失效,需要立即下载。

(2)定时下载;

北斗星历服务启动后或星历数据下载完成后,星历服务根据系统时间计算出到下一个整点的时长,启动定时唤醒手机系统服务;当整点到达时,系统被唤醒并发出定时下载消息,北斗星历服务在收到定时下载消息时,下载星历数据。

进一步,所述星历数据库采用blob类型保存二进制星历数据,采用整数类型保存星历数据长度,采用文本类型保存创建时间和修改时间。

根据本发明实施例的android平台北斗星历服务控制方法及系统,可以实现自动下载更新北斗星历数据,根据星历有效性判断是否需要下载,最大限度地降低用户的数据流量消费。在北斗模块启动后适时地从本地数据库中读取星历数据,下发给北斗模块使用,极大提高了北斗模块的定位速度,最大程度上弥补了当前卫星数量不足,解决了定位跟踪困难的问题,使北斗定位在移动终端上能够到达实用目的,大大提高了产品的竞争能力,为产品赢得市场提供了强有力的保证。本发明通过移动数据网络将星历数据实时下载到本地数据库,并适时下发给北斗定位模块,以缩短冷启动和跟踪定位时间。

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1为根据本发明实施例的android平台北斗星历服务控制方法的流程图;

图2为根据本发明实施例的android平台北斗星历服务控制系统的结构图;

图3为根据本发明实施例的北斗星历数据库结构的示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

如图1所示,本发明实施例的android平台北斗星历服务控制方法,包括如下步骤:

步骤s1,安装有android系统的终端设备监测是否开启以下功能:北斗定位模块是否开启、移动数据或wifi功能是否开启;如果监测开启,则执行步骤s2。

具体来说,北斗星历服务作为一个android系统服务,始终运行在系统后台,自动管理星历数据下载和适时将星历数据下发给北斗定位模块。其中,下载星历数据的前提条件是北斗模块定位已经启动,并且移动数据功能打开或wifi功能打开,终端设备能正常连接到厂商提供的星历服务器上。基于此,首先需要执行步骤s1的开启监测功能。其中,终端设备可以为手机或平板电脑等。

在本发明的一个实施例中,北斗定位模块至少提供以下功能之一:北斗独立定位、gps独立定位、北斗与gps组合定位模式。

步骤s2,终端设备与星历服务器建立连接。

步骤s3,终端设备从星历服务器上自动下载星历数据,并存储至本地的星历数据库,其中,星历数据的下载方式包括:立即下载和定时下载。

星历数据服务器中存储的星历数据分别对应以下有效期:

gps星历数据每2个小时更新一次,北斗星历数据每1个小时更新一次。因此,本发明确定星历数据的最小有效期为1小时。

下面参考图3对星历数据库的结构进行说明:在本地创建一个星历数据库,仅保存一条记录,采用blob类型保存二进制星历数据,采用整数类型保存星历数据长度,采用文本类型保存创建时间和修改时间。

在本发明的一个实施例中,星历数据下载方式分为两种,立即下载和定时下载。下载的星历数据保存在本地数据库,同时下发给北斗定位模块使用。

具体地,星历数据的下载方式,包括:

(1)立即下载:

当星历数据库中没有数据时,第一次启动系统服务或服务数据被清除(包括恢复出厂设置),创建本地数据库,没有星历数据记录,需要立即下载;

当数据库中星历数据已经失效时,检查当前系统时间与星历数据修改时间的差,如果小于0或大于1小时,认为星历已经失效,修改系统日期时间或长时间关闭北斗定位功能都会导致星历数据失效,需要立即下载。

(2)定时下载;

北斗星历服务启动后或星历数据下载完成后,星历服务根据系统时间计算出到下一个整点的时长,启动定时唤醒手机系统服务;当整点到达时,系统被唤醒并发出定时下载消息,北斗星历服务在收到定时下载消息时,下载星历数据。

步骤s4,当判断收到接收到预定的系统事件或星历服务事件时,根据需要下载的星历数据更新星历数据库,从星历数据库中读取星历数据并同时发送至北斗定位模块使用。

在本发明的一个实施例中,预定的系统事件包括:

1)网络连接事件("android.net.conn.connectivity_change"),当网络开关(移动数据或wifi)打开时收到;

2)系统启动完成事件("android.intent.action.boot_completed"),手机开机后收到;

3)设置日期时间事件("android.intent.action.time_set"),用户设置系统时间收到。

星历服务事件"android.intent.action.action_ephemeris_service",在北斗模块启动、清除星历数据、冷启动、导航开始等工况收到;北斗模块切换工作模式,北斗独立定位、gps独立定位、北斗与gps组合定位模式切换时收到。

如图2所示,本发明实施例的android平台北斗星历服务控制系统,包括:安装有android系统的终端设备1和星历服务器2。其中,终端设备1内置有北斗定位模块。

具体地,终端设备1用于监测是否开启以下功能:北斗定位模块是否开启、移动数据或wifi功能是否开启,如果开启则终端设备1与星历服务器2建立连接。

由于下载星历数据的前提条件是北斗模块定位已经启动,并且移动数据功能打开或wifi功能打开,终端设备能正常连接到厂商提供的星历服务器上。基于此,首先需要执行北斗定位和网络开启监测功能。其中,终端设备1可以为手机或平板电脑等。

在本发明的一个实施例中,北斗定位模块至少提供以下功能之一:北斗独立定位、gps独立定位、北斗与gps组合定位模式。

终端设备1从星历服务器2上自动下载星历数据,并存储至本地的星历数据库。

星历服务器2中存储的星历数据分别对应以下有效期:

gps星历数据每2个小时更新一次,北斗星历数据每1个小时更新一次。因此,本发明确定星历数据的最小有效期为1小时。

下面参考图3对星历数据库的结构进行说明:在本地创建一个星历数据库,仅保存一条记录,采用blob类型保存二进制星历数据,采用整数类型保存星历数据长度,采用文本类型保存创建时间和修改时间。

在本发明的一个实施例中,星历数据下载方式分为两种,立即下载和定时下载。下载的星历数据保存在本地数据库,同时下发给北斗定位模块使用。

具体地,星历数据的下载方式,包括:

(1)立即下载:

当星历数据库中没有数据时,第一次启动系统服务或服务数据被清除(包括恢复出厂设置),创建本地数据库,没有星历数据记录,需要立即下载;

当数据库中星历数据已经失效时,检查当前系统时间与星历数据修改时间的差,如果小于0或大于1小时,认为星历已经失效,修改系统日期时间或长时间关闭北斗定位功能都会导致星历数据失效,需要立即下载。

(2)定时下载;

北斗星历服务启动后或星历数据下载完成后,星历服务根据系统时间计算出到下一个整点的时长,启动定时唤醒手机系统服务;当整点到达时,系统被唤醒并发出定时下载消息,北斗星历服务在收到定时下载消息时,下载星历数据。

终端设备1在判断收到接收到预定的系统事件或星历服务事件时,根据需要下载的星历数据更新星历数据库,从星历数据库中读取星历数据并同时发送至北斗定位模块使用。

在本发明的一个实施例中,预定的系统事件包括:

1)网络连接事件("android.net.conn.connectivity_change"),当网络开关(移动数据或wifi)打开时收到;

2)系统启动完成事件("android.intent.action.boot_completed"),手机开机后收到;

3)设置日期时间事件("android.intent.action.time_set"),用户设置系统时间收到。

星历服务事件"android.intent.action.action_ephemeris_service",在北斗模块启动、清除星历数据、冷启动、导航开始等工况收到;北斗模块切换工作模式,北斗独立定位、gps独立定位、北斗与gps组合定位模式切换时收到。

根据本发明实施例的android平台北斗星历服务控制方法及系统,可以实现自动下载更新北斗星历数据,根据星历有效性判断是否需要下载,最大限度地降低用户的数据流量消费。在北斗模块启动后适时地从本地数据库中读取星历数据,下发给北斗模块使用,极大提高了北斗模块的定位速度,最大程度上弥补了当前卫星数量不足,解决了定位跟踪困难的问题,使北斗定位在移动终端上能够到达实用目的,大大提高了产品的竞争能力,为产品赢得市场提供了强有力的保证。本发明通过移动数据网络将星历数据实时下载到本地数据库,并适时下发给北斗定位模块,以缩短冷启动和跟踪定位时间。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。本发明的范围由所附权利要求及其等同限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1