将第三方库依赖项添加到Android库

Olg*_*eva 5 android static-libraries maven dynamic-library

我正在开发Android Library项目,并希望将Picasso添加到我的库中.我注意到不同的库使用不同的方法来做到这一点:

  • 一些库使用静态库依赖(如Glide lib中的 gif_encoder和gif_decoder库)
  • 有些库使用通常的动态gradle或pom依赖(比如Picasso使用OKHttp或Wire使用Retrofit和RxJava).我不是指带有+符号的动态版本(如2.3.3+)
  • 有些库需要将一些lib的显式依赖性与目标库一起添加(比如RxAndroid使用RxJava)

所以问题是:将第三方库添加到Android库项目的最佳方法是什么?我的意思是有助于简化最终用户的库集成过程并避免版本冲突和其他潜在问题的方式.特定方法的优点和缺点是什么?

Yoa*_*uet 2

大多数时候您实际上没有选择,您必须遵循库安装建议。

如果所有选项都可用,我认为使用 Gradle 或 Maven 会更容易,因为您唯一需要做的就是通常在配置文件中添加一行来设置新库。

当有更新可用时,您更改版本,系统会自动为您下载并更新库。

当您必须使用静态库时,您需要自行设置并将外部库链接到您的项目。现在,如果我必须在其中自定义一些代码,我只保留静态库。

我不是这方面的专家,但自从我迁移到 Android Studio 后,Gradle 为我节省了很多时间(我之前使用的是 Eclipse ADT,但从未成功地将 Gradle 集成到它上面)。

您还可以使用以下命令直接在 Gradle 上编译外部 jar 文件:

compile fileTree(dir: 'libs', include: ['*.jar'])
Run Code Online (Sandbox Code Playgroud)