一种应用于安卓车载系统快速加载多媒体应用列表的方法与流程

文档序号:18552820发布日期:2019-08-30 22:13阅读:918来源:国知局
一种应用于安卓车载系统快速加载多媒体应用列表的方法与流程

本发明涉及安卓车载多媒体应用开发领域,具体涉及一种应用于安卓车载系统快速加载多媒体应用列表的方法。



背景技术:

随着科技的日新月异,车载系统越来越受消费者的重视,如今一套车载系统是否便捷好用成为了消费者选购汽车的评判条件之一。安卓系统以其平台开放性、开源系统、硬件的丰富性、应用程序无缝结合等优势成了大多数车载系统的首选,但是原生安卓系统直接用作车载系统会产生诸多弊端,犹如原生安卓系统在展示多媒体应用列表时,需要先封装好媒体的数据结构类,通过便利计算指定目录下文件,筛选出我们需要的数据进行封装,生成可用的媒体数据,再放到安卓提供的基础适配器内适配展示。如遇到存储介质中的数据量大或需要频繁读写数据时,则运算时间会更长,直接影响列表的展示,以至影响用户体验。多媒体应用是安卓车载系统的标配应用,例如音乐播放器、视频播放器、图库相册等,现时安卓车载系统的功能越来越丰富,应用也随之越来越多,多媒体应用列表是安卓系统的重要组成部分,列表的加载快慢是使用者对安卓系统最直观的使用感受。因此,众多车载系统厂商为了满足用户对安卓车载系统多媒体应用列表的不同体验需要进行了各种各样的调整,有的调整显示所有媒体文件信息,有的调整显示媒体目录信息,有的调整显示两级媒体目录信息,但却没有一种通用模式来兼容消费者的不同需求,可复用度低,程序开发周期也长。



技术实现要素:

本发明的目的在于针对上述现有技术的不足,提供了一种应用于安卓车载系统可快速加载显示多媒体应用列表的方法、能够使应用列表复用率提高、可扩展性增强的技术方法。

本发明的技术方案是这样实现的:

一种应用于安卓车载系统快速加载多媒体应用列表的方法,所述方法包括下列步骤:

当检测到外部设备插入时,媒体扫描进程对外部设备上的数据进行处理,以最快的速度将符合用户自定义条件的文件简单信息解析出来,存入媒体数据库,并通知媒体应用进程可以获取数据显示,后续继续进行文件深度解析,以便数据的快速展示。

进一步地,所述媒体应用进程收到所述媒体扫描进程的通知状态后,向所述媒体数据库发送请求检索数据的消息。

进一步地,所述媒体数据库检索到数据后返回所述媒体应用进程,所述媒体应用进程可根据用户需求将数据封装成可操作的数据类型。

进一步地,将封装好的数据放入安卓适配器内以便进一步的进行适配展示或列表显示。

进一步地,当用户操作进入不同的目录时,调用所述媒体应用进程提供的查询数据接口,向所述媒体数据库请求数据,重新执行前述两步方法步骤。

进一步地,数据类型为文件夹的数据结构类和文件的数据结构类合并而成的封装成可操作的数据类型。

进一步地,所述媒体扫描进程和所述媒体应用进程为各自独立工作,并通过c/s模式进行交互。

与现有技术相比,本发明通过用户可自定义数据库中的数据信息提高了多媒体应用列表的复用率和可扩展性,进一步优化了多媒体应用列表的数据结构类,通过将文件与文件夹两种不同类型的数据结构封装成同一种类型数据结构的方式,实现在安卓适配器中的逻辑处理,并且无需对安卓适配器进行大量改造,使得多媒体应用列表加载显示更加快速。

附图说明

下面结合附图中的实施例对本发明作进一步的详细说明,但并不构成对本发明的任何限制。

图1是本发明提出的原理示意图;

图2是传统多媒体应用列表原理示意图;

图中:1、媒体扫描进程;2、媒体数据库;3、媒体应用进程;4、将封装好的数据放入安卓适配器;5、通知状态;6、检索数据;7、返回检索到的数据。

具体实施方式

下面结合附图对本发明作进一步说明,但不作为对本发明的限定。

如图1所示,本发明一种应用于安卓车载系统快速加载多媒体应用列表的方法,所述方法包括下列步骤:

步骤1:当检测到外部设备插入时,媒体扫描进程1对外部设备上的数据进行处理,以最快的速度将符合用户自定义条件的文件简单信息解析出来,存入媒体数据库2,可通过数据库查询操作的mysql语句进行增删改查,并通知媒体应用进程3可以获取数据显示,通过对比谷歌公司原生的媒体扫描策略,由于数据库生成的数据快,通过查询自定义数据库出来的数据会更快,自定义扫描策略的方法在车载系统上表现更优,所以列表展示的数据会更快,后续继续进行文件深度解析,以便数据的快速展示。

步骤2:所述媒体应用进程3收到所述媒体扫描进程1的通知状态5后,向所述媒体数据库2发送请求检索数据6的消息。

步骤3:所述媒体数据库2检索到数据后返回检索到的数据7到所述媒体应用进程3,所述媒体应用进程3可根据用户需求将数据封装成可操作的数据类型filedata。

步骤4:将封装好的数据filedata放入安卓适配器4baseadapter内以便进一步的进行适配展示或列表显示。

步骤5:当用户操作进入不同的目录时,调用所述媒体应用进程3提供的查询数据接口,向所述媒体数据库2请求数据,重新执行步骤3至4中的方法步骤。

原理说明:

1、所述媒体扫描进程1和所述媒体应用进程3为各自独立工作,并通过c/s模式进行aidl接口协议交互,服务端存在于系统后台,它没有可见的界面,一直在后台进行工作,负责处理外部设备数据的扫描以及媒体数据库管理部分;客户端负责数据的展示以及媒体播放,当启动我们的客户端时,客户端即会向服务端查询当前数据状态,并请求媒体播放数据,服务端返回数据后,即可在客户端看到音乐列表数据,使用者在选择列表中的一首歌曲时,可进行播放操作。以下就是在播放器中可看到的播放列表,其数据都是通过查询数据库返回并进行数据封装处理,存于安卓适配器当中,而展示出来。

2、所述媒体扫描进程1的功能是对usb设备进行数据扫描并插入自定义所述媒体数据库2,同时通知应用进程进入扫描状态;所述媒体应用进程3的功能是根据用户业务需求,获取所述媒体数据库2数据进行数据展示。

3、将原来的两组数据类型文件夹的数据结构类mediafolderbean和一个文件数据结构类meidabean合并成一种数据类型meidabean,这是一种兼用性的数据格式封装,可增加属性isfolder,这是一个可以区分文件+文件夹的属性,所以所述数据类型meidabean可适用于纯文件夹列表、纯文件列表、文件夹+文件列表形式,这样做的好处是简化在所述安卓适配器4baseadapter内的逻辑运算,实现快速展示,同时可以兼用不同的业务需求,用于封装实现代码如下:

如图2所示,传统多媒体应用列表步骤为:

步骤1:应用检测到有外部设备插入时,开始进行媒体文件便利,采用递归的方式找寻符合条件的文件;

步骤2:定义一个媒体文件夹的数据结构类mediafolderbean和一个媒体的数据结构类meidabean,将找寻的数据封装成两组数据源list<mediafolderbean>folderdata和list<meidabean>filedata;

步骤3:将folderdata和filedata放到安卓适配器baseadapter内进行ui适配并装载到控件listview上面显示,重写baseadapter的getcount()、getitem()、getview()等函数,其中涉及到folderdata和filedata数据的频繁运算;

步骤4:当使用者操作媒体文件夹进入下一级目录时,需要重新执行2、3步逻辑。

本发明通过与传统多媒体应用列表实现原理相比,本方法发明步骤1增加了用户自定义条件查询存储数据相比传统遍历递归寻找条件方式速度更快、复用率更高、可扩展性更强;本方法发明步骤2至4采用兼容性数据格式封装方式相比传统定义的数据结构类的方式无需对安卓适配器大量改造,逻辑处理能力更快,最终实现安卓车载系统快速加载显示多媒体应用列表。

以上所述的实施例,只是本发明较优选的具体实施方式的一种,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。

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