在多个 Android Studio 项目中重用相同的代码

Muz*_*Muz 7 android android-library android-studio

我有一些代码想在多个不同的项目中使用。假设它是一些处理付款和购物车等事务的电子商务代码。

在不同的项目中复制粘贴所有内容似乎效率低下且危险。如果我在核心电子商务模块中添加一项功能或修复一个错误,我希望该更改也反映在其他使用它的项目中。

我也想重用一些活动、片段、适配器。

对此有什么好的方法?

ישו*_*ותך 5

当我们有一个库项目需要共享到本地计算机上的每个项目时,我们可以使用 Maven。

A. 在您的库中,我们将为您的项目执行以下步骤:

  1. 从 Android Studio 创建一个库项目。

  2. 将 Gradle Android Maven 插件添加到root build.gradle

    buildscript {
      repositories {
        mavenCentral()
      }
    
      dependencies {
        classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'
      }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  3. 在您的库 build.gradle 中为步骤 1 添加应用插件。(不是 root build.gradle):

    apply plugin: 'com.android.library'
    apply plugin: 'com.github.dcendents.android-maven'
    
    Run Code Online (Sandbox Code Playgroud)
  4. 在应用插件之后添加以下内容,此行在添加到项目时确定您的库:

    group = 'com.yourpackage.yourlibrary'
    version = '1.0'
    
    Run Code Online (Sandbox Code Playgroud)
  5. 在 settings.gradle 中添加以下代码:

    rootProject.name = 'yourlibrary' 
    
    Run Code Online (Sandbox Code Playgroud)
  6. 然后使用以下命令将其发布到您的本地 Maven:

    ./gradlew install
    
    Run Code Online (Sandbox Code Playgroud)

    或者您可以在 Android Studio 中使用 gradle 选项。

  7. 您的库将安装在 $HOME/.m2/repository 中。请记住,要使用该库,您需要像这样添加:

      Groupid:artifactid:versionid
    
    Run Code Online (Sandbox Code Playgroud)

    Artifactid 将是您的库的包名称。

B. 这是您的项目中使用库的步骤:

  1. 在您的根 build.gradle 中添加以下代码:

      mavenLocal() // for local maven.
    
    Run Code Online (Sandbox Code Playgroud)

这是为了获取我们在步骤 A 中安装的本地库 maven

  1. 然后在您的应用程序project.gradle 中,为库添加编译:

    compile 'com.yourpackage.yourlibrary:yourlibrary:1.0'
    
    Run Code Online (Sandbox Code Playgroud)

阅读更多:


小智 -1

据我所知 1. 正如其他人所说,尝试创建自己的模块或库,并在需要的地方使用它 2. 使用 Git 等版本控制工具(如果您的代码发生更改,它将反映在您的 git 帐户中)