前言:网上有很多资料。本文只是针对自己的理解和实践的记录。
模块依赖 module
创建一个正常的项目,把你想要的功能(最好是能复用的功能)写上,可删除项目本身的activity和布局文件。找到项目的build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.lihang.mydialog"
minSdkVersion 15
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
将'com.android.application' 改为:'com.android.library'
将 applicationId "com.lihang.mydialog"这行删除
做完这两部后 Sync Now。刷新项目,那么大功告成
再创建一个新项目,依赖上传的module。File-->New-->Import Module,出现下面:
此时勾选 Import。同时修改一下Module name。那么大功告成了!~
本地依赖(jar包:只打包.class文件,不包含资源文件)
同样新建一个项目,然后File-->New-->New Module ,选中Android Library
之后检查build.gradle,应用依赖。为了之后测试是否成功,在module新建一个类
public class Utils {
public static String showLog(){
return "jar--返回的数据";
}
}
在你module的build.gradle中加入如下代码,与android标签平级
//修改jar名字+将指定jar生成的地方
task makeJar(type:Copy){
//如果之前存在,则先删除
delete 'build/libs/demo.jar'
//设置拷贝的文件
from('build/intermediates/packaged-classes/debug/')
//生成jar包后的文件目录位置
into('build/libs/')
//include,exclude参数来设置过滤
include('classes.jar')
//重命名
rename('classes.jar','demo.jar')
}
makeJar.dependsOn(build)
完成以上步骤后,在android studio右边点击Gradle,找到你的module项目Tasks-->other-->makeJar,如下图
打包成功后如下图:
然后在你module的build-->libs-->demo.jar,看到这已经大功告成了。
你可以新建一个项目,将demo.jar拷贝到libs里。然后添加引用。最后在项目中调用刚刚的utils类。结果成功。
那么如何打包成aar文件呢?,接下来继续看(其实aar和module依赖是一回事)
找到我们本篇文章最开始的 模块依赖 module,把一个正常项目转换成了依赖后,直接如下图所示,选择当前module的Tasks-->build-->assemble
然后在你的项目module里build-->outputs-->aar里,如下图:
生成成功之后,怎么使用呢。其实和module一样,File-->New-->New Module,选择Import.JAR/.AAR Package
如图:
做完这一步后,和正常的module一样添加依赖。大功告成了!!可以正常使用了、
远程依赖 (项目经常会使用github上第三方库)
怎么将自己项目变成远程依赖呢?
完成 本地依赖(jar包:只打包.class文件,不包含资源文件) 步骤① 部分。把你需要的功能代码等,放入library中,同时将代码上传到 github 上(注意远程依赖是包含资源文件的)。 如有同学想要 上传github教程的 可以留言。文章将持续更新
像这样:
之后点击 红圈中的 release。如下图
填写完版本号,和描述之后。点击Publish release 即可。
之后登陆https://jitpack.io/ 官网。登陆你的github账号如图,找到你刚刚的library项目:
(方框内是你github所有项目,找到你的library项目,然后点击get it,那么恭喜你大功告成。新建项目引入依赖,本人已亲测)
如果本文对你有帮助请逛下我的github,希望对你有帮助: