【问题标题】:Can a native library be included in an Android Studio project as a dependency?可以将原生库作为依赖项包含在 Android Studio 项目中吗?
【发布时间】:2016-05-21 09:03:43
【问题描述】:

我有一个使用本机库 (.so) 的工作 Android 应用程序,该库位于 jniLibs/armeabi-v7a 目录中。该项目是使用 git 进行版本控制的,我发现使用库进行版本控制的唯一解决方案是将整个 .so 库提交到 git 存储库,这是不鼓励使用 git 的做法。

有没有办法让 gradle 像检索 Maven 依赖项一样检索本机库?或者是否可以打包一个包含本机库的 Android 库项目,以便可以将其作为 Maven 依赖项检索?

【问题讨论】:

  • 1.是的,当然,这是可能的。许多作为 Maven 依赖项检索的库都包含本机库。例如github.com/koral--/android-gif-drawable。 2.别忘了除了armeabi-v7a还有几种不同的架构。

标签: android android-studio dependencies shared-libraries android-gradle-plugin


【解决方案1】:

或者是否可以打包一个包含本机库的 Android 库项目,以便可以将其作为 Maven 依赖项进行检索?

当然。 AAR 可以包含本机二进制文件。 SQLCipher for Android 是其中之一。我的AndDown 是另一个。对于 AndDown,库项目包含 NDK 源代码。

如果您没有 NDK 源,则库项目中将有 jniLibs/。 jniLibs/ 的内容将与 AAR 一起打包,供您上传到您最喜欢的 Maven 风格的存储库。

【讨论】:

    猜你喜欢
    • 2014-02-05
    • 2015-11-11
    • 1970-01-01
    • 1970-01-01
    • 2014-04-24
    • 1970-01-01
    • 2014-06-17
    • 2019-11-14
    • 2017-01-10
    相关资源
    最近更新 更多