如何整合两个大的Android应用工程
1个回答
2016-11-11 · 学高端技术就来八维教育
关注
展开全部
整合步骤
第一步:将A中的java代码和jni代码移植到B中,注意package结构上的隔离。大的工程往往庞杂无头绪,感觉无处下手。那么从以编译通过为第一个目标,以build error为线索驱动,是一个很合适的方式,这样一个一个(有时候是几百个几百个)来fix build error,也更有成就感一些。从这一步完成开始,简单粗暴开始编译,看build error“走着瞧”。
第二步:移植库(jar、aar、so、编译依赖工程等)。第一步完成之后,开始编译,第一批出现的build error应该是外部依赖库,这样一条一条error对照着A中的gradle.build,将库移植到B。就此也可以整理、学习。
第三步:移植res(values、layout、drawable等)。第二步完成之后,res资源找不到的build error将出现。这时候需要细致地将A中所有的res集成过来。这时主要的工作量在于解决id冲突,但往往可能没有想象中冲突那么多,虽然像R.id.login_button这类的id命名是所有人的最爱,但每个人的命名习惯千差万别,碰上的几率可能并不大,集中精力rename冲突的一小撮就好。这一步之后,将迎来第一个里程碑——build
success。
第四步:移植manifest.xml。主要是permission和基础设施(Activity、Service、Provider、Receiver等)。
第五步:移植代码混淆(Proguard或者Dexguard)配置。各种-keep、-dontwarn。。。。。。
第六步:run调试。经过上述5步,新的大工程B(A)应该可以运行了,接下来就是冒烟测试,跑跑主流程,见招拆招,解决crash、功能问题。
第一步:将A中的java代码和jni代码移植到B中,注意package结构上的隔离。大的工程往往庞杂无头绪,感觉无处下手。那么从以编译通过为第一个目标,以build error为线索驱动,是一个很合适的方式,这样一个一个(有时候是几百个几百个)来fix build error,也更有成就感一些。从这一步完成开始,简单粗暴开始编译,看build error“走着瞧”。
第二步:移植库(jar、aar、so、编译依赖工程等)。第一步完成之后,开始编译,第一批出现的build error应该是外部依赖库,这样一条一条error对照着A中的gradle.build,将库移植到B。就此也可以整理、学习。
第三步:移植res(values、layout、drawable等)。第二步完成之后,res资源找不到的build error将出现。这时候需要细致地将A中所有的res集成过来。这时主要的工作量在于解决id冲突,但往往可能没有想象中冲突那么多,虽然像R.id.login_button这类的id命名是所有人的最爱,但每个人的命名习惯千差万别,碰上的几率可能并不大,集中精力rename冲突的一小撮就好。这一步之后,将迎来第一个里程碑——build
success。
第四步:移植manifest.xml。主要是permission和基础设施(Activity、Service、Provider、Receiver等)。
第五步:移植代码混淆(Proguard或者Dexguard)配置。各种-keep、-dontwarn。。。。。。
第六步:run调试。经过上述5步,新的大工程B(A)应该可以运行了,接下来就是冒烟测试,跑跑主流程,见招拆招,解决crash、功能问题。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询