[发明专利]一种移动端业务模块组件化的配置方法及系统在审
申请号: | 201711103838.3 | 申请日: | 2017-11-10 |
公开(公告)号: | CN107908403A | 公开(公告)日: | 2018-04-13 |
发明(设计)人: | 高枫 | 申请(专利权)人: | 北京搜狐新动力信息技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/73;G06F8/71 |
代理公司: | 北京集佳知识产权代理有限公司11227 | 代理人: | 古利兰,王宝筠 |
地址: | 100190 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 移动 业务 模块 组件 配置 方法 系统 | ||
技术领域
本发明涉及移动端技术领域,尤其涉及一种移动端业务模块组件化的配置方法及系统。
背景技术
最近几年随着移动互联网的兴起和繁荣,许多公司都将自己在传统平台上的业务移植到了移动端,随着移动客户端的更新迭代,APP上的功能和业务也越来越多,越来越多的代码开始往小小的客户端涌入,尤其是一些航母级应用,各种业务模块都需要在其上面进行推广。而无论是iOS系统还是Android系统,各种客户端的体积也变得臃肿庞大。为了降低大型移动客户端软件开发的复杂性和耦合度,同时也为了适应模块重用、多团队并行开发测试等等需求,迫切需要一种技术能把客户端化整为零,这些模块可以自由组合,并且当部分功能变更时只需要更新对应模块,因此模块的组件化配置在Android平台上应运而生。
通常大型的移动客户端均有一个主工程和一些子模块构成,主工程就是客户端的核心业务代码,子模块有网络库,图片库等通用依赖库和登录,分享,游戏等业务模块库,这就是软件开发中的“模块化”。其中通用依赖库一般是一些第三方开源库或者是公司内部统一的基础服务,一般来说改动频率很低。而业务模块库是随着公司业务发展的过程不断更新和迭代的,很有可能是独立于主工程由另一个团队完成的。传统的做法是该模块会以SDK(Software Development Kit,软件开发工具包)或者源码的方式直接集成到主工程中来,然后跟随着主工程的开发和测试流程走。
综上所述,现有技术的缺点主要有:1、代码的解耦和隔离:由于模块开发初期一般是以源码方式和主工程一起开发,导致模块和主工程耦合较高,代码也没有隔离,主工程容易误引用到模块中的代码和资源,从而可能会导致一些不易发现的问题。2、模块无法单独运行和调试:由于模块在项目中是以库的形式存在,所以不能单独运行和调试该模块。3、项目编译和构建时间长:每次重新构建项目时每个模块都要重新构建和编译源码,导致多模块的大型项目构建时间很长,影响开发效率。
发明内容
有鉴于此,本发明提供了一种移动端业务模块组件化的配置方法,能够有效降低代码模块的耦合度,使代码架构更加清晰,使得模块可以与主工程独立开发、运行和调试,同时模块化的编译可以有效减少编译时间。
本发明提供了一种移动端业务模块组件化的配置方法,所述方法包括:
将模块源码从项目中独立;
配置使模块独立编译、调试和运行的gradle脚本;
对代码进行隔离处理;
对版本进行优化控制。
优选地,所述将模块源码从项目中独立包括:
新建依赖库模块、本模块和一个空的Demo主工程,所述Demo主工程作为程序入口跳转到所述本模块。
优选地,所述配置使模块独立编译、调试和运行的gradle脚本包括:
在gradle的属性文件中配置标识模块是否可以独立运行的变量IsBuildModule;
新建清单文件,在所述清单文件中指定程序入口的activity;
在Demo主工程中基于所述变量IsBuildModule判断是否编译模块库。
优选地,所述对代码进行隔离处理包括:
通过在资源名前添加前缀进行解耦模块间的跳转。
优选地,所述对版本进行优化控制包括:
将生成的AAR文件发布到远程仓库。
一种移动端业务模块组件化的配置系统,包括:
独立模块,用于将模块源码从项目中独立;
配置模块,用于配置使模块独立编译、调试和运行的gradle脚本;
隔离处理模块,用于对代码进行隔离处理;
优化控制模块,用于对版本进行优化控制。
优选地,所述独立模块包括:
新建单元,用于新建依赖库模块、本模块和一个空的Demo主工程,所述Demo主工程作为程序入口跳转到所述本模块。
优选地,所述配置模块,包括:
标识配置单元,用于在gradle的属性文件中配置标识模块是否可以独立运行的变量IsBuildModule;
指定单元,用于新建清单文件,在所述清单文件中指定程序入口的activity;
判断单元,用于在Demo主工程中基于所述变量IsBuildModule判断是否编译模块库。
优选地,所述隔离处理模块包括:
添加单元,用于在资源名前添加前缀进行解耦模块间的跳转。
优选地,所述优化控制模块包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京搜狐新动力信息技术有限公司,未经北京搜狐新动力信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711103838.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于认知技能开发的功能性脑电图剪辑
- 下一篇:程序打包方法、系统及终端设备