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

时间:2015-04-04 19:42:51

标签: android android-studio gradle android-gradle

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

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

1 个答案:

答案 0 :(得分:3)

创建库是Android开发的一个自然组成部分。更大的应用程序几乎从不作为单个应用程序创建,没有任何库。

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

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

  1. Library是项目中的一个单独模块(一个多模块项目)。
  2. 库可以存储在项目的本地(通常位于libs目录中)。
  3. 可以将库部署到存储库(Maven,Ivy存储库)。
  4. 多模块项目中,您可以通过以下方式添加库:

    dependencies {
        project(":library-module")
    }
    

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

    可以通过以下方式添加本地存储的库

    dependencies {
        compile files('libs/some_library.jar')
    }
    

    它的缺点是每次更新库时都必须更新本地jar(因此更改项目)。

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

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

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

    要部署库,您需要应用能够执行此操作的插件(例如'maven''maven-publish'插件),并将一些配置添加到build.gradle。 可以找到一些描述如何做到这一点,例如hereherehere