参考地址:https://www.jianshu.com/p/c203f6afc06a

https://blog.csdn.net/qq_23575795/article/details/79001399

 

 在android studio上可以开发jar(java通用类库)和aar(android 独有资源库)。

     区别:    

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

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

一、jar导出:

由于之前一直没有写博客的习惯,所以这么些年下来回头看时并没有留下些实质的东西,所以从今天开始决定还是写点东西。最近刚刚才开始接触SDK的开发,先从简单的开始吧,今天就介绍使用Android Studio开始第一个SDKDemo的开发。

1、先使用Android Studio创建项目工程(此处省略);

2、在项目里面新建一个module,类型选择Android Library;新建一个Class文件,然后添加一个方法,例如:

 

3、在module(Library)的gradle里面添加下面的内容(注:文件最外层添加),如下图:

PS:jar文件来源一定要选择自己的jar路径,我使用的是Android Studio 3.3.1 我的文件如下:

task  makeJar(type: Copy){    delete('build/libs/test.jar')    from('build/intermediates/packaged-classes/debug/')    into('build/libs/')    include('classes.jar')    rename('classes.jar','test.jar')}makeJar.dependsOn(build)

4、点击Sync Now,等Android Studio运行完成后,点击右上角的Gradle按钮,如下图:

 

然后点开我们的module(就是之前建的 sdklibrary),你取的什么名字在这就是什么名字,点开只有在点开other,然后再展开的方法里面,找到我们的makeJar,如图:

 

5、双击makeJar按钮,等到运行结束,就可以看到build/intermediates/bundles/default/这个文件夹下面生成了classes.jar文件,同时在build/libs/这个目录里面也有test.jar文件了,就算完成了。 

PS:我的classes.jar文件在build/intermediates/packaged-classes/debug/文件夹下,Android Studio 版本为3.3.1

二、aar的创建及导出:

在工程下  new module 选择 Android Library; 

在工程目录下可以看到要开发的library目录:

之后rebuild project会在Linbrary->build->outputs-aar文件目录下生成**.aar库:

  

然后,复制**.aar到要引用该库的module的libs文件下并在build.gradle里配置:

repositories{
    flatDir{
        dirs'libs'
    }
}
dependencies {
    compile(name:'stringcheck',ext:'aar')  //name:aar的name
        
}
然后就可以使用自己的aar库了
..........
 

更多相关文章

  1. android-apt和annotationProcessor的使用以及互换
  2. couldn't find import for class android.net.ethernet.Ethernet
  3. 模拟器上“插入”SD卡
  4. android assets文件夹下的数据库应用
  5. cocos2d-x移植android的编译列出cpp文件
  6. 如何开发/修改屏幕锁
  7. Android开发环境搭建及第一个HelloWorld程序
  8. android sdk manager不能更新
  9. android setWebChromeClient和setWebViewClient的使用区别

随机推荐

  1. RxJava学习模块之Schduler
  2. JAVA面向对象基础
  3. JAVA生成带LOGO的二维码
  4. Java 编程下的同步代码块(售票员)
  5. 如何指定休眠连接映射?
  6. 在扑克游戏中显示卡片的图像
  7. JavaFX窗口自适应
  8. JAVA实现二进制和16进制之间的互相转换,8
  9. Java学习之面向对象三
  10. java微信小程序解密AES/CBC/PKCS7Padding