Article Image
read

通过Gradle怎样创建并编译一个Android Lib工程


怎样创建一个Android Lib(库项目)

创建一个Android Lib工程和创建一个Android Application工程没有太大的不同。但还是有一点小区别的。 他们使用了不同的Plugin,但是在内部这些plugin共享了大部分的代码,并且他们都是由相同的com.android.tools.build.gradle.jar提供的。

apply plugin: 'com.android.library'
android {
    compileSdkVersion 22
    buildToolsVersion "22.0.0"
    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.1.1'
}

这里创建了一个使用API-22编译SourceSet的库项目。

普通项目和库项目的区别

一个库项目的输出是一个.aar包,它打包了编译代码(例如jar包或者本地so文件)和资源(mainifest,res,asset),一个库项目也可独立于应用程序声称一个APK。 标识Task同样适用于库项目(assembleDebug,assembleRelease).

引用一个库项目的方法

引用一个库项目和引用一个普通项目的方法是一样的。

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.1.1'
    compile(project(':libraries:hyy-android-common-lib')) {
        exclude group: 'com.android.support', module: 'appcompat-v7'
}

库项目的发布

一般情况下一个库只会发布它的release variant版本。这个版本会被所有引用它的项目使用。

Blog Logo

大乖和小乖


Published

Image

球球

球球,咱们的blog

Back to Overview