android包管理
A. Android有没有像类似于 IOS 的 cocoapods这样的包管理工具
每种语言发展到一个阶段,就会出现相应的依赖管理工具, 或者是中央代码仓库。比如
Java: maven,Ivy
Ruby: gems
Python: pip, easy_install
Nodejs: npm
随着iOS开发者的增多,业界也出现了为iOS程序提供依赖管理的工具,这个工具叫:CocoaPods。
CocoaPods简介
CocoaPods是一个负责管理iOS项目中第三方开源代码的工具。CocoaPods项目的源码在Github上管理。该项目开始于2011年8月12日,经过一年多的发展,现在已经超过1000次提交,并且持续保持活跃更新。开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出现使得我们可以节省设置和更新第三方开源库的时间。
拿我之前开发的粉笔网iPhone客户端为例,其使用了14个第三方开源库。在没有使用CocoaPods以前,我需要:
把这些第三方开源库的相关文件复制到项目中,或者设置成git的submole,然后这些开源库通常需要依赖系统的一些framework,我需要手工地将这些framework一一增加到项目依赖中,比如ASI网络库就需要增加以下framework: CFNetwork, SystemConfiguration, MobileCoreServices, CoreGraphics and zlib。
对于RegexKitLite这个正则表达式库,我还需要设置-licucore的编译参数
手工管理这些依赖包的更新。
这些体力活虽然简单,但毫无技术含量并且浪费时间。在使用CocoaPods之后,我只需要将用到的第三方开源库放到一个名为Podfile的文件中,然后执行pod install。CocoaPods就会自动将这些第三方开源库的源码下来,并且为我的工程设置好相应的系统依赖和编译参数。