如何在Android中创建可重用的活动?

Cam*_*boy 8 android gradle android-studio android-gradle-plugin

我已经在移动应用程序上工作了几个月.现在我想开发其他应用程序,但重用我编写的代码.我希望有可重用的代码(活动),以便在许多项目中使用.通过这种方式,如果其中一个中存在一些错误,我将修复该错误,然后将更改应用于使用我的库的所有项目.简而言之,我想知道使用Android Studio为Android开发自己的库的最佳方法是什么.我一直在研究,但我找不到有用的东西.在Eclipse中,我可以创建一个项目并使其成为一个库.然后,在新项目中,我创建了对该库的引用.我想知道使用Android Studio实现类似功能的最佳方法是什么.

  1. 是否可以将自己的库添加到gradle中?
  2. 生成jar并将其添加到我的项目中的build.gradle是一个好习惯吗?
  3. 如果您正在考虑使用Android库模块(Android Studio),我如何在许多项目中使用它?
  4. 你有其他选择吗?

Tom*_*mik 3

创建库是 Android 开发的自然组成部分。更大的应用程序几乎永远不会在没有任何库的情况下作为单个应用程序创建。

您可以使用jaraar库(历史上apklib与 Maven 构建配置一起使用,但目前已过时)。

在 Android Studio(Gradle 构建)中,您可以通过 3 种方式使用库:

  1. 库是项目(多模块项目)中的一个单独模块。
  2. 库可以存储在项目本地(通常在libs目录中)。
  3. 库可以部署到存储库(Maven、Ivy 存储库)中。

多模块项目中,您可以通过以下方式添加库:

dependencies {
    project(":library-module")
}
Run Code Online (Sandbox Code Playgroud)

如果您计划使用公共库创建多个 apk,则可以创建一个多模块项目(某些模块是库,某些模块是应用程序)。但我不建议这样做。最好有单独的项目(在单独的存储库中)来创建多个应用程序。因此,我更喜欢剩下的两种方法之一(最好是第 3 种)。

可以通过以下方式将本地存储的库添加到项目中:

dependencies {
    compile files('libs/some_library.jar')
}
Run Code Online (Sandbox Code Playgroud)

它的缺点是每次更新库时都必须更新本地 jar(从而对项目进行更改)。

部署的库是在项目中使用库的最佳方式。然后以这种方式添加库:

dependencies {
   compile 'com.google.code.gson:gson:2.2.4'
}
Run Code Online (Sandbox Code Playgroud)

使用已部署的库意味着您拥有一个存储库。最好使用远程存储库,但您需要一个服务器(除非您创建开源,在这种情况下您可以使用公共存储库,如 Maven Central 或 Jcenter)。如果您没有远程存储库,您也可以使用本地存储库(仅在您的计算机中可用),但是当您与其他开发人员合作时,这很困难(每个人都必须将库部署到他的本地存储库中)。

要部署库,您需要应用一个能够执行此操作的插件(例如'maven''maven-publish'多个插件)并将一些配置添加到build.gradle. 有关如何执行此操作的一些说明可以在例如此处此处此处找到。