代码接管是一个非常值得重视的一个环节。设想,如果没有交接文档,并且前任开发已经离职很久,这将会是多么糟糕的一件事。会出现诸如找不到代码位置、找不到签名文件、编译配置错误等严重问题。所以我总结一下要点。
1. 确保代码分支的正确性。
如果交接的代码是以文件的形式交接,那么有必要确认代码分支一定要是主干代码。
如果是gitlab等代码托管形式,要明确是否有发版分支,或者版本tag
2. 确保代码路径的正确性。
如果代码中包含多个项目,那么有必要找到相关的交接人、确认每个项目所在位置
例如飞米的文件结构就是:
小米无人机:代码文件路径\Android\4k
小飞机和手机手持云台:代码文件路径\Android\x9-gh2\fimiapp2.0
3. 确保编译配置的正确性。
务必与交接人确认是否有需要修改的编译配置。
如飞米的小飞机和手持手持云台两个app,就是通过修改两个配置实现同一个工程,打包出两个app,修改的配置关系如下:
Constants#productType | build variant | |
小飞机 | X9 | x9Debug/x9Release |
手持手机云台 | GH2 | gh2Debug/gh2Release |
4. 确保工程的完整性。
确保项目编译需要的依赖文件都存在,如签名文件、本地依赖库。
有个小技巧就是,如果发现没有一些.SO文件,可以通过解压线上apk文件找到这些文件
5. 确保运行环境的可靠性
由于开发环境的变化,那么很有可能你所使用的开发环境与交接代码所需要的开发环境存在很大差异。从而导致代码无法正常编译,出现层出不穷的编译错误。
原则就是,尽量尝试搭建当时的开发环境。就是代码最后一次提交所处时间之前的开发环境
有个小技巧就是,如果是需要引入一个新的库,但是会引起gradle版本冲突。首先可以尝试切换gradle版本或者build tool 版本,下下策,如果仅是使用其中几个文件,那么可以不引入新的库,仅把需要的文件拷到本地使用即可。