[发明专利]一种安卓组件间数据传递方法、设备、系统及存储介质在审
申请号: | 202011500829.X | 申请日: | 2020-12-17 |
公开(公告)号: | CN112579061A | 公开(公告)日: | 2021-03-30 |
发明(设计)人: | 许继昌;李凡平;王成 | 申请(专利权)人: | 青岛以萨数据技术有限公司;北京以萨智能技术有限公司;安徽以萨数据技术有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F9/54 |
代理公司: | 北京酷爱智慧知识产权代理有限公司 11514 | 代理人: | 周俊 |
地址: | 266000 山东省青岛市黄*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 组件 数据 传递 方法 设备 系统 存储 介质 | ||
本发明公开了一种安卓组件间数据传递方法、设备、系统及存储介质,方法包括:生成注解处理器插件;通过所述注解处理器插件提供的注解对目标组件的类和其内部变量添加注解;通过所述注解处理器插件收集所述目标组件的类的信息,根据收集的信息生成辅助类;调用所述辅助类,使当前组件将与所述目标组件中对应变量的数据传递到所述目标组件中;调用所述辅助类,对传递的数据进行解析后对所述目标组件的变量进行赋值。编译时根据注解生成类,其变量的数据类型是严格固定的,且无需手动添加作为KEY的字符串,既能很方便的进行组件间的数值传递,又能减少开发过程中的错误出现率,有效减少了项目的后期维护成本。
技术领域
本发明涉及计算机软件技术领域,具体涉及一种安卓组件间数据传递方法、设备、系统及存储介质。
背景技术
目前安卓间组件数据传递主要有以下几种:
1)直接传值:利于序列化机制,通过Intent对象携带传递值,通过KEY-VALUE的方式获取准确的值;
2)间接传值:通过构建全局对象、SharedPreference、文件、数据库等方式间接的在组件之间传值。
目前传值的方式都有一个共同点:发送方与接受方之间需提前知晓传值的细节,包括传值类型和传值对应的KEY,并且KEY和对应的数据之间没有任何唯一的匹配限制,因此另一方面会增加开发者开发时出错的几率和沟通成本,另一方面项目维护和对接过程中都需要明确的文档和知晓者存在,会增加项目的后期维护成本。
发明内容
针对现有技术中的技术缺陷,本发明实施例的目的在于提供一种安卓组件间数据传递方法、设备、系统及存储介质,以解决背景技术中所提出的技术问题。
为实现上述目的,第一方面,本发明实施例提供了一种安卓组件间数据传递方法,包括:
生成注解处理器插件;
通过所述注解处理器插件提供的注解对目标组件的类和其内部变量添加注解;
通过所述注解处理器插件收集所述目标组件的类的信息,根据收集的信息生成辅助类;
调用所述辅助类,使当前组件将与所述目标组件中对应变量的数据传递到所述目标组件中;
调用所述辅助类,对传递的数据进行解析后对所述目标组件的变量进行赋值。
进一步,对目标组件的类和其内部变量添加的注解包括:@Required、@Optional、@Builder,其中:
@Builder表示需要对此目标组件生成传值的代码;
@Required表示此数据是必须要获取的;
@Optional表示此数据是可选择性获取的。
进一步,目标组件的类的信息包括:类名称、内部变量数据、内部变量数据类型。
进一步,所述通过所述注解处理器插件收集所述目标组件的类的信息,根据收集的信息生成辅助类,具体包括:
读取注解信息;
根据所述注解信息,构造类结构;
根据所述类结构,生成辅助类。
进一步,借助JavaPoet/KotlinPoet生成对应编程语言的辅助类。
进一步,需要读取的注解信息包括:
@Builder标记的类、类名称;
@Required标记的数据的数据类型、数据名称;
@Optional标记的数据的数据类型、数据名称。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于青岛以萨数据技术有限公司;北京以萨智能技术有限公司;安徽以萨数据技术有限公司,未经青岛以萨数据技术有限公司;北京以萨智能技术有限公司;安徽以萨数据技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011500829.X/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置