43

我们可以找到一些非常好的安卓开源库。我想知道将它们集成到我们自己在 Android Studio 中的项目的最佳方法是什么。以下是一些基本方法:

  • 将源代码和资源文件复制到我们自己的项目中。我们需要更改很多代码(包名,以及xml中的名称等)
  • 如果提供了 jar 文件,我只需为我的项目创建 libs 文件夹并在其中复制 jar 文件。并在模块设置的依赖项中添加 jar 文件。但不幸的是,我收到了很多错误消息,例如“Gradle:包 com.google.gson 不存在”。

是否有将第三方源或 jar 文件添加到现有 android studio 项目中的一般规则?谢谢

4

4 回答 4

57

我更喜欢使用中央存储库进行依赖管理。因此,对于gson 2.3依赖项,您应该添加到build.gradle文件中:

  • 指定您要为依赖项使用 maven 中央存储库

    repositories {jcenter()}

  • compile依赖项添加到gson 2.6.2

    dependencies {compile 'com.google.code.gson:gson:2.6.2'}

Android Studio 以及您的 CI 服务器现在应该可以轻松构建您的项目了。您可以继续应用程序开发。

我更喜欢使用中央存储库进行依赖管理,因为:

  • 更容易的范围管理 - 有些库仅用于测试,有些应该包含在 apk 中,有些是运行环境的一部分(如 android.jar 本身)
  • 更容易的传递依赖项管理 - 收集库依赖项非常困难,如果您使用“jar-with-dependencies”,您可能会在 dexing 期间收到错误“已添加类”
  • 更轻的存储库和更容易的依赖项升级

例子:

  • Robolectric jar 应仅用于单元测试,不应成为 apk 本身的一部分
  • 存储库从带有 jar 的不同文件夹中清理干净,结帐所需的时间要少得多。无需下载旧 jar 并用新 jar 替换

我应该注意到:

  • maven central 中的库并不多,您应该努力在项目中以这种方式使用它们
  • 在使用中央存储库方法进行 dexing 期间,您可以更容易地遇到“已添加的类”错误
  • 您可以混合使用来自中央存储库和 lib 文件夹的依赖项,但为了简单起见,我更喜欢只使用一种方式
于 2013-09-01T09:04:57.613 回答
13
  1. 将 Gson jar(在我的情况下,gson-2.2.4.jar)放入 libs 文件夹
  2. 右键单击它并点击“添加为库”
  3. 确保compile files('libs/gson-2.2.4.jar')在您的build.gradle文件中
  4. 做一个干净的构建(你可能可以在 Android Studio 中很好地做到这一点,但要确保我在终端中导航到我的应用程序的根文件夹并输入gradlew clean。我在 Mac OS X 上,你的系统上的命令可能不同

这一系列步骤取自Android Studio:将 jar 添加为库?这不是我原来的答案。我再次将它们发布在这里,因为在查找同一主题时,您的问题是 Google 搜索结果中的第三个问题。因此,复制。

所有功劳归于编写步骤的人。

于 2013-09-01T05:21:19.480 回答
3

下载并复制.jar文件libs夹中的文件,然后在 build.gradle 中添加一行:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar']) ----> AS creates this
    compile 'com.google.code.gson:gson:2.3.4'   ----------> I added this one
}

不要忘记点击“立即同步”

我正在使用 Android Studio 1.1.0

于 2015-03-23T06:10:00.067 回答
1

下载并将您的 jar 复制到 libs 文件夹,然后将以下内容添加到您的 app.gradle 文件和 SYNC。

dependencies {
     compile 'com.google.code.gson:gson:{version_you_need}'
}

repositories{
  flatDir{
      dirs 'libs'
  }
}
于 2016-10-12T07:09:33.373 回答