一种基于AOA协议的车机联网方法及系统与流程

文档序号:12829246阅读:726来源:国知局
一种基于AOA协议的车机联网方法及系统与流程

本发明涉及车载信息领域,特别涉及一种基于aoa协议的车机联网方法及系统。



背景技术:

随着汽车产业的蓬勃发展,车载导航机已逐渐人们出行必备之装置,而在当今互联网大潮下,通过车载导航机获取网络信息成为一种趋势。

目前市场上大多的车机不能直接联网,现有技术中使车载导航接入互联网的方式主要包括两种:一是让车载导航内嵌智能手机模块(比如gprs模块3g模块4g模块)。当车载导航嵌入了智能手机模块后,再插入sim卡,就可以很容易的连接到互联网上。但这种方式的缺点是增加了很大的硬件成本,后期的流量成本和sim卡维护都比较麻烦;另一种是在车载导航内嵌入短距离通讯的无线模块(比如wifi蓝牙),利用该无线模块与智能手机连接。利用智能手机的上网功能,进而使车载导航也具有上网功能,这种方式的好处是没有增加硬件成本,使用方便,但需要车载导航厂商在车载导航出厂前安装无线模块,这样短期内很难让大多数车机具有上网功能。



技术实现要素:

鉴于上述问题,本发明提供了一种解决上述问题的基于aoa协议的车机联网方法及系统,使车机与智能手机通过usb数据线相连通,利用智能手机的网络获取车机需要的信息。

基于本发明实施例的一个方面,提供一种基于aoa协议的车机联网方法,分别创建安装于配件端的配件应用程序与安装于车机端的主机应用程序,所述主机应用程序通过配件应用程序获取服务器信息,配件应用程序与主机应用程序通过usb建立通信连接,所述车机端与配件端均为支持aoa协议的设备。

作为具体实例之一,所述配件应用程序与主机应用程序采用多线程异步调用的并发处理方式,且在所述配件应用程序中自定义数据栈管理网络数据请求。

作为具体实例之一,在所述配件应用程序中创建启闭组件,所述启闭组件根据usb的插拔判断主机模块与配件模块的连接启动或关闭。

作为具体实例之一,所述方法还包括通过所述配件应用程序对配件端是否处于wifi开启的状态进行监听的步骤。

作为具体实例之一,所述方法中还包括通过配件应用程序判断配件端是否包含增量更新数据的步骤。

作为本发明实施例的另一个方面,本发明还提供一种基于aoa协议的车机联网系统,所述系统包括:

主机模块:用于向配件模块发送本地的网络请求;

配件模块:用于接收并分析处理主机模块的请求,并与服务器建立通信;

所述主机模块设置于车机端,所述配件模块设置于配件端,所述车机端与配件端均为支持aoa协议的设备;

所述主机模块与配件模块通过usb进行通信。

作为具体实例之一,所述配件模块包括:

存储模块:用于存储主机模块传输的数据请求;

并发处理模块:用于通过多线程异步调用的方式处理存储模块中的数据请求。

作为具体实例之一,所述配件模块还包括:

启闭模块:用于根据usb的插拔启动或关闭主机模块与配件模块的连接。

作为具体实例之一,所述配件模块还包括:监听模块:用于监听配件端的wifi是否开启。

作为具体实例之一,所述配件模块还包括:

判断模块:用于判断配件端是否存在存储的增量数据包;

本地传输模块:用于将配件端的增量数据包传输至主机模块。

本发明实施例提供的技术方案可以包括以下有益效果:本发明通过usb使车机与智能手机相连接,利用aoa协议向手机发送获取网络的请求,使车机通过与手机的连接获得需要的网络信息。本发明只需分别在车机与手机端安装应用软件,然后通过usb连接建立通信,就可以使车机通过手机的网络获取需要的信息;本发明具有稳定性好、使用方便,开发及应用成本低等优点。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为本发明实施例中实施例一提供的基于aoa协议的车机联网方法的流程图;

图2为本发明实施例中实施例一提供的配件应用程序监听wifi的流程图;

图3为本发明实施例中实施例二提供的系统的结构示意图;

图4为本发明实施例中实施例一提供的配件模块的结构示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然此部分及附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。

aoa协议是google公司推出的用于实现android设备与外围设备之间usb通信的协议。该协议拓展了android设备usb接口的功能,为基于android系统的智能设备应用于数据采集和设备控制领域提供了条件。

android作为一种基于开源linux的智能手机操作系统,广泛应用于手机、平板电脑等移动设备中。在各种android设备提供的接口中,usb接口是常见接口,该接口的作用是为android设备充电并通过pc端的驱动程序实现android设备与pc的交互。如何拓展android设备的usb接口功能是当前的研究热点之一。

本发明是一种基于aoa协议实现android设备usb通信的方案,车机端不需要加入特质的芯片,仅通过usb数据线与智能手机连接就可以实现车机联网的功能,互联方案完全靠软件实现,不需要对硬件进行调整,而且只要通过程序包的形式将相应用的软件安装到车机端与手机端,车机端就可以通过usb与智能手机进行通信,通过智能手机获取网络信息。

android系统一般支持多种usb外围设备。根据android设备在usb通信中充当的角色,可以将androidusb通信分为主机模式和配件模式。

本发明采用的通信模式为配件模式:配件模式是指android设备充当usb从机,外部设备充当主机并为总线供电。此模式下,外部usb设备称为android配件。该模式为不具备主机功能的android设备提供与usb设备交互的能力。android设备和android配件都必须支持aoa协议。

实施例一

如图1,本发明提供一种基于aoa协议的车机联网方法,包括:

s11:创建配件应用程序;

s12:创建主机应用程序;

s13:将配件应用程序安装与配件端;

s14:将主机应用程序安装与车机端;

s15:通过usb连接车机端与配件端;

s16:所述主机应用程序通过配件应用程序获取服务器信息;

所述车机端与配件端均为支持aoa协议的设备。

优选地,所述的配件端为手机,配件应用程序为可以安装与手机的app,主机应用程序为基于aoa协议的程序包,可通过在服务器下载后安装至车机。

进一步地,车机端的主机应用程序开发的流程如下:

s21:发现配件并过滤;

s22:获取与配件通信的权限通过广播接收器的方式以弹出授权对话框的形式询问用户是否允许与android配件通信;

s23:开始与配件通信;创建文件输入输出流代表usb批量传输端点,通过多线程异步调用以流传输的方式实现usb通信;

s24:终止与配件通信;通过广播接收器侦听usb配件与android设备的断开操作,当事件发生时,关闭文件输入/输出流。

进一步地,配件端的配用应用程序开发的流程与创建一般app的流程相似,在此不再赘述。

为了更好的实现是车机联网的功能,优选地所述配件应用程序与主机应用程序采用多线程异步调用的并发处理方式,且在所述配件应用程序中自定义数据栈管理网络数据请求。所述的数据栈包括网络数据栈与本地数据栈。

由于联网请求功能操作有异于本地数据传输,分别使用网络栈与本地数据栈进行并发管理,保证每一条请求准确的执行和回收。在此过程中,手机负责分别处理与车机端数据的交互和与服务器数据交互,扮演了一个路由器的角色。采用多线程异步执行网络请求,自定义栈来管理请求,实现多数据同时下载的断点续传,网络状态不好时还可以对请求重复利用,进行优化处理。

为了更好的保证应用的开启与应用,需要对usb的热插拔现象进行处理,优选地,在所述配件应用程序中创建启闭组件,所述启闭组件根据usb的插拔判断主机模块与配件模块的连接启动或关闭。

手机端在作为配件模式时通常会捕获配件连接后的事件,重新连接usb时一般会自动启动手机端作为配件设备的应用,但是在此过程中如果不断的插拔usb线,应用会不断的开启,这就有可能造成应用被重复开启多个,对软件的性能造成影响,本发明中通过在配件应用程序中自定义后台activity(启闭组件),无论应用是否已启动,在进行aoa连接通信时都会启动此activity,通过对设备的连接状况来处理是否重新连接设备,每次启动后直接关闭,这样保证了整个aoa设备应用的正常打开与关闭。

进一步地,所述方法还包括通过所述配件应用程序对配件端是否处于wifi开启的状态进行监听的步骤。通过所述配件应用程序对配件端(手机)的网络状态进行判断,若手机处于wifi状态,自动获取服务器中增量升级数据包,或者其他数据,若手机仅为3g等移动网络,则不进行大数据量的下载。

进一步地,所述方法中还包括通过配件应用程序判断配件端是否包含增量更新数据的步骤。

当车机端与手机端连接时,配件应用程序(app)自动获取手机中是否包括增量升级数据,若有直接传输至车机端,以方便用户获得最新的数据。

数据自动升级分两部分,包括在wifi下自动下载数据和连接车机后自动传输数据,在wifi开启的状态下会进行自动的数据升级下载,在连接车机后自动传送车机所需要的增量升级数据。

具体地,监听wifi的流程如图2:

s31:开启配件应用程序中wifi自动下载功能;

s32:监听wifi是否开启;若未开启,进入s33;若开启,进入s34;

s33:等待开启;

s34:判断是否与车机相连接,若是,进入s35;若否,进入s36;

s35:自动下载更新数据至网络数据栈,传输至车机;

s36:自动下载更新数据至本地数据栈,等待与车机连接后,自动传输。

当车机端与手机相连通时,如发出更新请求,则先对本地数据栈进行读取,本地数据栈若无内容,再请求网络下载。

进一步地,为了使用户操作便捷,避免连接成功后,输入局域网内ip地址的麻烦操作,互联系统需要有自动获取对方ip地址的功能。地址获取成功后还要有商务校验的过程,只有批准配对互联的设备才能进行互联,保护各方利益及产权。

车机端与配件端在进行usb连接后便可传递信息,车机端将请求所需信息传递给配件端,手机端接收并进行分析处理,如果是网络请求则将请求的uri(统一资源标识符)拿出请求网络(区分post/get请求方式),接收服务器返回结果将其返回给车机;若是增量数据等本地数据请求则检索本地目录是否含车机所需文件,有则返回文件,若无封装uri进行网络请求。

本方法可以使车机使得许多热门的车机网络应用(天气,违章查询等),并且可以方便地获取导航增量升级数据,且具有输出速度快、性能稳定等优点。

在手机与车机互联之后,不影响手机的正常使用,可随时接收、拨打电话,收发短信,操作手机上其他app等。

实施例二

基于同一发明构思,本发明还提供了一种基于aoa协议的车机联网系统,由于该系统所解决问题的原理与前述基于aoa协议的车机联网方法相似,因此该装置的实施可以参见前述方法的实施,重复之处不再赘述。

本发明提供一种基于aoa协议的车机联网系统,如图3,所述系统包括:

主机模块21:用于向配件模块发送本地的网络请求;

配件模块22:用于接收并分析处理主机模块的请求,并与服务器13建立通信;配件模块22通过手机的网络15与服务器建立连接,所述的网络15可以是移动数据或wifi等;

所述主机模块设置于车机端11,所述配件模块设置于配件端12,所述车机端与配件端均为支持aoa协议的设备;

所述主机模块与配件模块通过usb14进行通信。

进一步地,如图4,所述配件模块22包括:

存储模块31:用于存储主机模块传输的数据请求;所述的存储模块与方法中的数据栈相对应;其中包括本地数据栈311与网络数据栈312;

并发处理模块32:用于通过多线程异步调用的方式处理存储模块中的数据请求。

进一步地,如图4,所述配件模块还包括:

启闭模块33:用于根据usb的插拔启动或关闭主机模块与配件模块的连接。

进一步地,所述配件模块还包括:监听模块:用于监听配件端的wifi是否开启。

进一步地,如图4,所述配件模块还包括:

判断模块34:用于判断配件端是否存在存储的增量数据包;

本地传输模块35:用于将配件端的增量数据包传输至主机模块。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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