android studio 创建aar公共库笔记整理

转载请注明出处:
牵手生活--:笔记是整理思路方式,分享是一个美德,牵手是我的生活方式


涉及的知识要点

  • Android studio 创建工程库(aar)
  • 其他module如何直接引用aar工程(build.gradle配置)
  • 其他module如何引用aar文件(注意需要用release版本)
  • 如何上次到Nexus私服(等待细化)
  • android studio工程替换AAR包不生效
  • aar的混淆仅混淆自己及libs中的jar包代码,不混淆build.gradle引用的第三方代码

创建aar公共库

参见:
Android Studio创建Android公共库模块
Android Studio多Module使用 aar 依赖包 丢包解决
AndroidStudio中多个Module依赖同一个jar的解决方案--阿里云
AndroidStudio中多个Module依赖同一个jar的解决方案-csdn

导入一个AndroidStudio工程作为一个Library Module
Merged Manifest合并清单的效果并找出冲突错误
Android Studio】AS使用小技巧,拷贝module到另一个项目

注意点:

  • 1、AndroidManifest.xml中的package 名字必须与build.gradle中的applicationId一支
  • 2、无法访问android:src="@drawable/icon资源,需要修改如android:src="@mipmap/ic_launcher"
  • 3、如果aar中使用了包含有jar包,可能造成jar冲突(最好改为gradle 引用)



比如引用:XposedBridgeApi-82.jar
改为
/*
    provided 'de.robv.android.xposed:api:53'
    provided 'de.robv.android.xposed:api:53:sources'
*/
    provided 'de.robv.android.xposed:api:82'
    provided 'de.robv.android.xposed:api:82:sources'

aar提交给他人使用时注意点:

1:添加到在aar工程中的不需要再次被应用


android studio 创建aar公共库笔记整理_第1张图片
aar工程中的libs
android studio 创建aar公共库笔记整理_第2张图片
release.aar中已经有的情况
android studio 创建aar公共库笔记整理_第3张图片
aar的dependencies中引用

2:android studio工程替换AAR包不生效

android studio工程替换AAR包不生效
nnd 实在不行做了下面的工作

/导入wechatdb-release 去要添加如下依赖包/
compile (name: 'wechatdb-release', ext: 'aar')
替换为
api (name: 'wechatdb-release', ext: 'aar')

混淆注意实现

aar项目引入到libs的jar可以被混淆
build.gruid引入的其他库不会被混淆(比如Gson,还需要在引用该aar的工程做混淆)

其他问题:

打包成aar的工程有第三方jar包,生成aar后,里面的jar无法引用,怎么解决

https://zhidao.baidu.com/question/754280550951778764.html
androidstudio 引用本地aar文件 和aar文件中包含jar该如何引用
https://blog.csdn.net/m0_37559046/article/details/56284551

Android Studio多Module使用 aar 依赖包 丢包解决
https://www.cnblogs.com/bluestorm/p/6757999.html

参考文献:

Android Studio创建Android公共库模块
AndroidStudio发布公共类库到Maven仓库(Nexus)

你可能感兴趣的:(android studio 创建aar公共库笔记整理)