一种基于ReactNative车机端插件的实现方法及装置与流程
未命名
07-23
阅读:130
评论:0

一种基于react native车机端插件的实现方法及装置
技术领域
1.本发明涉及车机端应用程序技术领域,更具体地说,涉及一种基于react native车机端插件的实现方法及装置。
背景技术:
2.随着车联网的不断发展,车机能提供给用户的应用与服务也愈加丰富。而且随着app的不断迭代,功能越加越多,所占用的磁盘空间也越来越大,久而久之,车机内存空间逐渐告急,提示用户存储已满,请删除一些不常用的应用,给用户带来了极为不好的体验。
3.对于一个app来说,并不是所有的功能都会被用户经常使用,也并不是所有的用户都会使用到所有的功能。例如抖音app,其功能有短视频播放,拍摄,视频美化和处理,直播,购物等功能,但是大部分用户只会用到短视频播放的功能,却仍然需要将所有的功能下载到本地,无端占用了极大的存储空间,这是很不合理的。
4.插件化方案的提出,正是为了解决这一痛点。通过按需加载,让不同的用户按照需要加载对应的功能模块。
5.现有技术中,针对不同类型的用户群体,推出不同版本。如上面提到的抖音app,推出了简易版,只提供短视频播放等基本功能。该方案需要同时维护多个版本,维护成本较高,而且不够灵活,仅适用于用户特征清晰,特征点较少的app。再用抖音app来举例,只需要推出观众端,主播端两个版本即可满足大部分的用户。
6.此外,现有技术还通过合成dex的方式实现插件化。该方案实现复杂度较高,可支持的组件较少,加载时会带来一定的性能损耗,受系统差异性的影响较大,例如需要对高版本的android系统做专门的适配等。
技术实现要素:
7.本发明提供了一种基于react native车机端插件的实现方法及装置,解决现有技术维护成本较高,而且不够灵活,实现复杂度较高,可支持的组件较少,加载时会带来一定的性能损耗,受系统差异性的影响较大的问题。
8.为解决上述问题,一方面,本发明提供一种基于react native车机端插件的实现方法,包括:
9.判断是否存在bundle包;
10.若否,则下载并加载所述bundle包;
11.若是,判断是否需要更新所述bundle包。
12.所述判断是否存在bundle包,包括:
13.接收操作指示以进入相应的功能模块;
14.判断所述功能模块是否已经存在bundle包。
15.所述下载并加载所述bundle包,包括:
16.访问云端下载所述bundle包并保存至本地;
17.通过react native组件加载所述bundle包。
18.所述判断是否需要更新所述bundle包,包括:
19.通过访问云端对所述bundle包进行版本校验以判断所述bundle包是否需要更新;
20.若比对云端的版本号与本地存储的版本号一致,则无需更新;
21.若比对云端的版本号与本地存储的版本号不一致,则需从云端下载最新的bundle包以替换本地旧版本的bundle包。
22.一方面,提供一种基于react native车机端插件的实现装置,包括:
23.判断模块,用于判断是否存在bundle包;
24.下载模块,用于在不存在所述bundle包时,下载并加载所述bundle包;
25.更新模块,用于在存在所述bundle包时,判断是否需要更新所述bundle包。
26.所述判断模块包括:
27.接收子模块,用于接收操作指示以进入相应的功能模块;
28.判断子模块,用于判断所述功能模块是否已经存在bundle包。
29.所述下载模块包括:
30.下载子模块,用于访问云端下载所述bundle包并保存至本地;
31.加载子模块,用于通过react native组件加载所述bundle包。
32.所述更新模块包括:
33.比对子模块,用于通过访问云端对所述bundle包进行版本校验以判断所述bundle包是否需要更新;
34.不更新子模块,用于在比对云端的版本号与本地存储的版本号一致是,无需更新;
35.替换子模块,用于在比对云端的版本号与本地存储的版本号不一致时,需从云端下载最新的bundle包以替换本地旧版本的bundle包。
36.一方面,提供一种计算机可读存储介质,所述存储介质中存储有多条指令,所述指令适于由处理器加载以执行如上所述的一种基于react native车机端插件的实现方法。
37.本发明的有益效果是:
38.基于react native实现了车机端应用程序按照用户实际需要加载特定的功能模块,而不是将整个应用提前下载到车机端,从而节省了大量车机存储空间。
附图说明
39.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
40.图1是本发明提供的一种基于react native车机端插件的实现方法的流程图。
具体实施方式
41.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施
例,都属于本发明保护的范围。
42.在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
43.在本发明中,“示例性”一词用来表示“用作例子、例证或说明”。本发明中被描述为“示例性”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本发明,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本发明。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本发明的描述变得晦涩。因此,本发明并非旨在限于所示的实施例,而是与符合本发明所公开的原理和特征的最广范围相一致。
44.参见图1,图1是本发明提供的一种基于react native车机端插件的实现方法的流程图。本方法基于react native,通过加载bundle包的方式来加载最新的应用程序。该基于react native车机端插件的实现方法包括步骤s1-s3:
45.s1、判断是否存在bundle包;接收操作指示以进入相应的功能模块;判断所述功能模块是否已经存在bundle包。
46.本实施例中,应用程序会在其本地目录中创建一个本地文件夹,用来保存bundle包和其版本信息。进入相应功能模块时,首先判断该目录下是否已经存在bundle包。
47.s2、若否,则下载并加载所述bundle包;访问云端下载所述bundle包并保存至本地;通过react native组件加载所述bundle包。
48.本实施例中,如果不存在,就说明是第一次加载该功能,直接访问云端下载至本地,然后react native直接加载该bundle即可。
49.s3、若是,判断是否需要更新所述bundle包。通过访问云端对所述bundle包进行版本校验以判断所述bundle包是否需要更新;若比对云端的版本号与本地存储的版本号一致,则无需更新;若比对云端的版本号与本地存储的版本号不一致,则需从云端下载最新的bundle包以替换本地旧版本的bundle包。
50.本实施例中,如果检测到本地已经存在bundle,则需要访问云端进行版本校验,看是否需要更新。如果比对云端的版本号与本地存储的版本号一致,就说明无需更新,直接加载即可。如果不一致,就需要从云端下载最新的bundle包,替换本地的旧版本之后,再进行加载。
51.综上,该方案给基于车机端的应用程序开发者提供了更多的灵活性;同时,减小了应用程序安装包的体积,大大节省了车机的存储空间。
52.本发明还提供一种基于react native车机端插件的实现装置,包括:
53.判断模块,用于判断是否存在bundle包;
54.下载模块,用于在不存在所述bundle包时,下载并加载所述bundle包;
55.更新模块,用于在存在所述bundle包时,判断是否需要更新所述bundle包。
56.所述判断模块包括:
57.接收子模块,用于接收操作指示以进入相应的功能模块;
58.判断子模块,用于判断所述功能模块是否已经存在bundle包。
59.所述下载模块包括:
60.下载子模块,用于访问云端下载所述bundle包并保存至本地;
61.加载子模块,用于通过react native组件加载所述bundle包。
62.所述更新模块包括:
63.比对子模块,用于通过访问云端对所述bundle包进行版本校验以判断所述bundle包是否需要更新;
64.不更新子模块,用于在比对云端的版本号与本地存储的版本号一致是,无需更新;
65.替换子模块,用于在比对云端的版本号与本地存储的版本号不一致时,需从云端下载最新的bundle包以替换本地旧版本的bundle包。
66.本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。为此,本发明实施例提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种基于react native车机端插件的实现方法中的步骤。
67.其中,该存储介质可以包括:只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)、磁盘或光盘等。
68.由于该存储介质中所存储的指令,可以执行本发明实施例所提供的任一种基于react native车机端插件的实现方法中的步骤,因此,可以实现本发明实施例所提供的任一种基于react native车机端插件的实现方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
69.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
技术特征:
1.一种基于react native车机端插件的实现方法,其特征在于,包括:判断是否存在bundle包;若否,则下载并加载所述bundle包;若是,判断是否需要更新所述bundle包。2.根据权利要求1所述的实现方法,其特征在于,所述判断是否存在bundle包,包括:接收操作指示以进入相应的功能模块;判断所述功能模块是否已经存在bundle包。3.根据权利要求1所述的实现方法,其特征在于,所述下载并加载所述bundle包,包括:访问云端下载所述bundle包并保存至本地;通过react native组件加载所述bundle包。4.根据权利要求1所述的实现方法,其特征在于,所述判断是否需要更新所述bundle包,包括:通过访问云端对所述bundle包进行版本校验以判断所述bundle包是否需要更新;若比对云端的版本号与本地存储的版本号一致,则无需更新;若比对云端的版本号与本地存储的版本号不一致,则需从云端下载最新的bundle包以替换本地旧版本的bundle包。5.一种基于react native车机端插件的实现装置,其特征在于,包括:判断模块,用于判断是否存在bundle包;下载模块,用于在不存在所述bundle包时,下载并加载所述bundle包;更新模块,用于在存在所述bundle包时,判断是否需要更新所述bundle包。6.根据权利要求5所述的实现装置,其特征在于,所述判断模块包括:接收子模块,用于接收操作指示以进入相应的功能模块;判断子模块,用于判断所述功能模块是否已经存在bundle包。7.根据权利要求5所述的实现装置,其特征在于,所述下载模块包括:下载子模块,用于访问云端下载所述bundle包并保存至本地;加载子模块,用于通过react native组件加载所述bundle包。8.根据权利要求5所述的实现装置,其特征在于,所述更新模块包括:比对子模块,用于通过访问云端对所述bundle包进行版本校验以判断所述bundle包是否需要更新;不更新子模块,用于在比对云端的版本号与本地存储的版本号一致是,无需更新;替换子模块,用于在比对云端的版本号与本地存储的版本号不一致时,需从云端下载最新的bundle包以替换本地旧版本的bundle包。9.一种计算机可读存储介质,其特征在于,所述存储介质中存储有多条指令,所述指令适于由处理器加载以执行权利要求1至4任一项所述的一种基于react native车机端插件的实现方法。
技术总结
本发明公开了一种基于React Native车机端插件的实现方法及装置,该基于React Native车机端插件的实现方法包括:判断是否存在bundle包;若否,则下载并加载所述bundle包;若是,判断是否需要更新所述bundle包本发明的有益效果是:基于React Native实现了车机端应用程序按照用户实际需要加载特定的功能模块,而不是将整个应用提前下载到车机端,从而节省了大量车机存储空间。大量车机存储空间。大量车机存储空间。
技术研发人员:黄波 罗亦伟 谢美红 易双全 吕汉镰 冯涛 李海浪 廖卫军 江智标 刘世楼 杨洁
受保护的技术使用者:深圳联友科技有限公司
技术研发日:2022.01.07
技术公布日:2023/7/22
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:耐电树枝化热塑性绝缘材料及其制备方法和应用 下一篇:耐水树电缆及其制备方法