Android Studio 编译release的aar、jar包

时间:2024-03-21 17:40:52

  • 使用命令编译release包

你Library的build.gradle中添加配置:

    buildTypes {
        debug {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        release {
            //混淆
            minifyEnabled true
            //Zipalign优化
            zipAlignEnabled true
            // 移除无用的resource文件
//            shrinkResources true//Error:Resource shrinker cannot be used for libraries.
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

打开terminal使用gradlew assembleRelease指令顺利生成了release.aar和classes.jar

Android Studio 编译release的aar、jar包

生成aar包和jar包的地址分别为:

YourLibrary\build\outputs\aar\YourLibrary-release.aar

YourLibrary\build\intermediates\bundles\release\classes.jar

YourLibrary是你的Library名称!


  • Gradle侧边栏Tasks任务编译

你Library的build.gradle中最后添加配置:

//task to delete the old jar
task deleteOldJar(type: Delete) {
    delete 'release/AndroidPlugin.jar'
}

//task to export contents as jar
task exportJar(type: Copy) {
    from('build/intermediates/bundles/release/')
    into('release/')
    include('classes.jar')
    ///Rename the jar
    rename('classes.jar', 'AndroidPlugin.jar')
}

exportJar.dependsOn(deleteOldJar, build)  

其中AndroidPlugin.jar就是生成的jar包名

实现上面操作之后 点击右边的Gradle侧边栏:

Android Studio 编译release的aar、jar包

Android Studio 编译release的aar、jar包

运行完毕后 你就可以在library项目文件下面的release文件夹里面找到生成的jar文件了

Android Studio 编译release的aar、jar包


aar文件的生成

其实aar文件每次项目运行都会直接自己生成

文件路径如下

Android Studio 编译release的aar、jar包

没有生成clean下项目或者rebuild的即可

步骤生成是:

1.点击右边的Gradle侧边栏

2.选择library目录下的 Tasks->build->assembleRelease方法

Android Studio 编译release的aar、jar包

3.等待运行完毕后去 buile->outputs->aar的文件夹下拷贝出来即可

总结:gradlew assembleRelease指令是编译整个项目,耗时比较久!

自定义任务和assembleRelease任务命令针对性的生成jar包和aar包相对快很多,经常要打包建议使用这两个!