您的位置:首页 > 移动开发 > Android开发

将android工程中的某些部分打包成aar,提供给第三方使用

2017-10-26 17:58 351 查看
jar包只能打包Java文件,但是如果你的功能模块中含有比较多的资源文件,图片、布局文件等就不能打包成aar的格式了。如果资源文件很少,打成jar包还是比较简便的。

1.无其他依赖的模块打包成单个aar文件

1.新建工程,并且新建一个Module。



选择Android Library->Next



填写任意名字,选择Finish



2.将要打包的文件都按照文件夹的位置放入你的Module中【注意查看你的包名以及引用的类名,导入过程中可能需要重新导入引用类,建议将import和package先删除,之后再Alt+Enter导入】



3.查看Manifest等清单文件是否有遗漏,若没有则点击Build->Build APK。此时将会在myLibrary->build->outputs->aar中找到生成的aar文件



2.有其他依赖项的Module打包成aar

[b]2.1依赖中只有jar包[/b]

这个与一般的工程中导入第三方库的方式一样,导入成功以后,查看你需要打包的
module
gradle
文件就行了。如果成功导入
gradle
文件中
dependency
会出现
compile'xxxx.jar'


然后根据上面编译apk的方法形成你的aar文件。

[b]2.2依赖中含有aar包

需要使用一个文件fat-aar.gradle←详情可戳。

1.首先加入fat-aar.gradle文件,并且在Module的gradle的依赖,在与
dependency
同等级的地方加入[/b]

apply from:'fat-aar.gradle'
dependencies{
xxxxxxxxx
//如果是aar文件就用 name中只需要名字不需要后缀.aar
embedded(name:'xxxxx',ext:'aar')
//如果是jar文件就用  jar包所在的文件夹的名字/jar包名
compile 'lib/xxxx.jar'
}


然后build apk就行了

3.是否把jar包或者aar包打到新的aar包中

在module的gradle中的dependencies中 不需要打包的用provided编译,需要打包的用compile编译

有的时候如果把所有的依赖项都打包的话,加到新的工程中会出现重复依赖的错误,所以要对打包的依赖项进行判断

dependencies{
//原有的aar文件不导入新的aar
provided (name:'xxxx',ext:'aar')
//原有的jar文件不导入新的aar
provided 'lib/xxxx.jar'
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android