Android Studio中多项目共享Library

我有两个项目都在使用Android Studio,一个是server项目,另一个是client项目,同时我有一个library在两个项目中都要使用。
一直以来,在两个项目中我都有一份library代码,在一个项目中改动library代码后,都需要手动拷贝到另一个项目。

今天我要创建一个共享的library项目,在两个Android Studio项目都能同时使用。

调整后的目录结构如下:

src/android/ServerProject  
src/android/ClientProject  
src/android/MySahredLibrary  

创建共享library项目

在src/android/MySharedLibrary下创建Library项目

目录结构如下:

MySharedLibrary/src/main/java/...  
               /build.gradle

其中build.gradle文件内容如下:

apply plugin: 'com.android.library'

android {  
    compileSdkVersion 20
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "com.tinkermode.mylibrary"
        minSdkVersion 15
        targetSdkVersion 20
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {  
    compile fileTree(dir: 'libs', include: ['*.jar']
}

这跟一般Android library项目差不多,唯一的区别是移除了项目最外层的build.gradle,
本来在最外层的build.gradle中需要定义的buildscript等由包含这个library的父项目提供(比如ServerProject)。

在其他项目中使用library项目

  • 首先,我需要在父项目的settings.gradle中引用library项目
// original line
include ':app'
// added this
include ':..:MySharedLibrary'  
  • 然后在使用library的module中,修改 build.gradle,加入如下行:
dependencies {  
  ...
  compile proejct(':..:MySharedLibrary')
}

这样调整后,我们就可以在两个项目中共享library了,还是挺简单的。



作者:阳春面
链接:https://www.jianshu.com/p/f867d207a740
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

猜你喜欢

转载自blog.csdn.net/weixin_39877717/article/details/79464822
今日推荐