android studio 如何生成自己的sdk

版本:Android stuido 2.2

很多时候我们要将自己开发一个类库打包成jar包以供他调用,这个jar包也叫你自己的SDK或者叫library。android studio生成jar包的方法与eclipse有所不同。在studio中library其实是module的概念。下面就详述过程。

新建一个工程名为MySDK, 然后在这个工程下新建一个名为myLibrary的module

android studio 如何生成自己的sdk_第1张图片

android studio 如何生成自己的sdk_第2张图片

然后我们需要配置主app的build.gradle文件,增加:

compile project(':mylibrary')

我的工程完整的dependencies如下:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:24.0.0'
    testCompile 'junit:junit:4.12'
    compile project(':mylibrary')
}

然后编译工程,Android Studio会同时生成.jar与.aar文件

分别存储位置:

*.jar:mylibrary/build/intermediates/bundles/debug(release)/classes.jar 
*.aar:mylibrary/build/outputs/aar/libraryname.aar

最后,手动将classes.jar改成所需要的名字,然后就可以给其它应用使用了。

android studio 如何导入第三方jar包


什么是AAR,与JAR区别

*.jar:只包含了class文件与清单文件,不包含资源文件,如图片等所有res中的文件。

*.aar:包含所有资源,class以及res资源文件全部包含

如果你只是一个简单的类库那么使用生成的.jar文件即可;如果你的是一个UI库,包含一些自己写的控件布局文件以及字体等资源文件那么就只能使用.aar文件


问题点

我实际测试发现,如果不加这一行

compile project(':mylibrary')

release下不会生成.jar文件。但是debug下就可以生成.jar文件。还不清楚什么原因。

你可能感兴趣的:(Android应用开发)