Android Studio Project 中Module打包成aar包
2017-02-13 10:26
316 查看
在公司开发中遇到这样需求,将一个独立的应用嵌入其他应用当中;
相关方法有两种:
第一种是将被嵌入的应用打包成 jar 包,但是这样的局限性是无法将被嵌入的应用所使用的资源性文件一起打包;
第二种是将被嵌入的应用打包成 aar 包,这也是 Android Studio 的一种新特性,可以将应用所使用的资源性文件一起打包;
如果Project 中 Module 是一个应用,则在 Module 的 build.gradle 文件中定义属性为:apply plugin: 'com.android.application';而如果 Mudule 是一个被引用的依赖 lib 库的话,则在 Module 的 build.gradle 文件中定义属性为: apply plugin: 'com.android.library;所以当我们将应用 Module 打包出
aar 文件的时候,需要修改类型属性。正常情况下,直接重新编译 Module 后可以在
目录下看到所要的 aar 打包文件。
也有可能在重新编译项目应用的时候,会出现找不到某些资源文件的错误;这可能是因为被嵌入项目引用了某些开源库,所以在引用的时候需要将这些配置也手动添加进来。
还遇到了如下图的错误:
同时在引用成功后,查看项目目录结构也确实可以查到该类,如下图:
按正常情况不应该出现这种错误的;后面经过查询和验证,其实出现这种错误的原因是 KdsCombinationDeailActivity 类当中我还引用了其他自定义的 lib 依赖库;而在引用的时候只是引用了打包成功后的 aar 包,而没有手动添加被嵌入项目所依赖的 lib 库(打包 aar 文件的时候这些依赖库需要自己手动添加);如下图
在引用打包成功后的 aar 的同时也需要手动添加依赖库文件 shareLib 和 shareMainLib(直接将 shareLib 和 shareMainLib 依赖库的 aar 包直接拷贝过去也可以);这样就OK了。
相关方法有两种:
第一种是将被嵌入的应用打包成 jar 包,但是这样的局限性是无法将被嵌入的应用所使用的资源性文件一起打包;
第二种是将被嵌入的应用打包成 aar 包,这也是 Android Studio 的一种新特性,可以将应用所使用的资源性文件一起打包;
如果Project 中 Module 是一个应用,则在 Module 的 build.gradle 文件中定义属性为:apply plugin: 'com.android.application';而如果 Mudule 是一个被引用的依赖 lib 库的话,则在 Module 的 build.gradle 文件中定义属性为: apply plugin: 'com.android.library;所以当我们将应用 Module 打包出
aar 文件的时候,需要修改类型属性。正常情况下,直接重新编译 Module 后可以在
目录下看到所要的 aar 打包文件。
也有可能在重新编译项目应用的时候,会出现找不到某些资源文件的错误;这可能是因为被嵌入项目引用了某些开源库,所以在引用的时候需要将这些配置也手动添加进来。
还遇到了如下图的错误:
同时在引用成功后,查看项目目录结构也确实可以查到该类,如下图:
按正常情况不应该出现这种错误的;后面经过查询和验证,其实出现这种错误的原因是 KdsCombinationDeailActivity 类当中我还引用了其他自定义的 lib 依赖库;而在引用的时候只是引用了打包成功后的 aar 包,而没有手动添加被嵌入项目所依赖的 lib 库(打包 aar 文件的时候这些依赖库需要自己手动添加);如下图
在引用打包成功后的 aar 的同时也需要手动添加依赖库文件 shareLib 和 shareMainLib(直接将 shareLib 和 shareMainLib 依赖库的 aar 包直接拷贝过去也可以);这样就OK了。
相关文章推荐
- 更新linux底层库(openssl)
- 修复mysql数据库
- nodejs中的fiber(纤程)库详解
- 桌面中心(一)创建数据库
- 用JS写的一个Ajax库(实例代码)
- 浅析C语言头文件和库的一些问题
- Android 中动态加载.jar的实现步骤
- 桌面中心(三)修改数据库
- 目前流行的JavaScript库的介绍及对比
- java使用命令行打包JAR
- 用代码更新你的jar包
- 详解Java Project项目打包成jar,并生成exe文件
- 用Java连接sqlserver数据库时候几个jar包的区别分析
- mysql 基础教程之库与表的详解
- MySql表、字段、库的字符集修改及查看方法
- 浅谈Android开发者2017年最值得关注的25个实用库
- 基于将Android工程做成jar包和资源文件的解决方法
- jar包双击执行程序的方法
- 浅谈java 执行jar包中的main方法
- 浅谈Linux下tar,jar压缩,解压的常用命令