我正在开发一个Android库项目,想要将Picasso添加到我的库中。 我注意到不同的库使用不同的方法来实现这一点: 一些库使用静态库依赖(如Glide lib中的gif_encoder和gif_decoder库) 一些库使用通常的动态gradle或pom依赖项(如Picasso使用OKHttp或Wire使用Retrofit和RxJava)。我不是指带有+符号的动态版本(如2.3.3+) 一些库需要将显式依赖项添加到某个库中并与目标库一起使用(如RxAndroid使用RxJava) 所以问题是:将第三方库添加到Android库项目的最佳方法是什么?我的意思是这种方式可以帮助简化最终用户的库集成过程,并避免版本冲突和其他潜在问题。 每种方法的优缺点是什么?
大多数情况下,你并没有真正的选择余地,你将不得不遵循库安装建议。如果所有选项都可用,我认为使用Gradle或Maven会更容易,因为你只需要在配置文件中添加一行代码来设置一个新的库。当有更新时,你只需要更改版本号,系统将自动下载并更新库。当你必须使用静态库时,你需要自己设置并将外部库链接到你的项目中。现在,我只在必须要定制一些代码的情况下使用静态库。虽然我并不是这方面的专家,但自从我迁移到Android Studio后,Gradle为我节省了大量时间(我以前使用Eclipse ADT,从未成功地将Gradle集成到其中)。你也可以直接在Gradle上编译你的外部jar文件,方法是:compile fileTree(dir: 'libs', include: ['*.jar'])