大规模Android团队的创新开发策略:动态运行与资源无缝整合
版权申诉
135 浏览量
更新于2024-07-03
收藏 1.07MB PPTX 举报
大规模团队的Android开发技术分享聚焦于解决传统开发模式中存在的问题,特别是针对支付宝这样的大型团队面临的挑战。在传统的开发模式下,"Oneapponeproject"导致每个应用程序专注于单一功能,限制了平台型应用的灵活性和扩展性。主要问题包括:
1. **技术限制**:
- 文件路径和方法ID(Filedid/Methodid)长度受限,超过Google规定的65536字符会导致编译错误。
- DEX文件过大,对于2.x版本的Android设备,这可能导致应用无法安装。
2. **构建与管理**:
- 编译构建过程繁琐,效率低下,影响开发周期。
- 配置、依赖管理和版本控制复杂,尤其是在有多个项目和100万行以上代码的情况下。
3. **支付宝面临的挑战**:
- 团队规模大,约50名开发人员,导致工程复杂度极高。
- 快速变化的业务需求需要频繁调整和部署,但成本高昂。
为解决这些问题,引入了以下策略:
- **系统切割**:将业务划分为12个子系统,每部分维护在独立的svn库中,便于管理。
- **Maven构建**:采用Maven进行项目构建,简化依赖管理和资源管理,提高构建效率。
- **工程布局统一**:引入统一的工程结构,实现模块间的动态加载和交互,提高开发效率。
- **服务化开发**:团队独立并行开发,通过服务接口进行协作,降低耦合度。
- **部署方式**:采用动态部署,减少冗余,便于版本管理和资源管理。
突破点在于:
1. **动态加载运行**:与行业其他方案相比,这种方法能更好地隔离模块,避免冗余,并简化服务接口的定义和管理,确保资源的高效利用。
2. **资源无缝处理**:通过资源ID的唯一性,如PPTTNNNN,确保资源的精确引用,同时通过`public.xml`等机制处理资源管理。
3. **工具化**:利用Android SDK的aapt工具、Eclipse的ADT以及Maven插件来自动化部分工作流程,降低对私有API的依赖,符合Google政策。
4. **风险控制**:通过严格的依赖关系管理和权限控制,确保系统的稳定性和安全性。
这份PPT详细探讨了如何在大规模团队中优化Android开发流程,从系统架构设计、构建工具选择到实际部署策略,全方位地应对了传统开发模式的局限,提高了开发效率和项目的可维护性。
2022-01-29 上传
2022-01-29 上传
2022-01-29 上传
171 浏览量
passionSnail
- 粉丝: 469
- 资源: 7836
最新资源
- foobar167.github.io:有关FooBar167 GitHub的网站
- 极小值
- quokka-marketplace
- cadvisor.tar.gz
- macho-browser:Mac浏览器,用于Mach-O二进制文件(macOS,iOS,watchOS和tvOS)
- 易语言学习-工具加载支持库.zip
- Oedipus-开源
- zkSforce:可可库,用于调用Salesforce.com Web服务API
- Kaely:Página网站
- apache-ant-zip-2.3.jar.zip
- SuperRanker:清单计量协议
- PHP-电子商务-网站:该项目从数据库中获取产品,并将其显示在多个页面上。 产品页面将显示所有产品,然后用户将能够查看单个产品并将其添加到购物车
- 易语言学习-闪电易支持库 2.4#4.zip
- cooViewer:cooViewer-适用于Mac的简单漫画查看器
- DeCAPitated
- ProjectItalika:测试