// 由于Library module中引用了 gif 库的 aar,在多 module 的情况下,
// 其他的module编译会报错,所以需要在所有工程的repositories
// 下把Library module中的libs目录添加到依赖关系中
dirs project(‘:AppLibrary’).file(‘libs’)
}
}
}
AS中目前无法将library中所使用的所有相关aar包一并打包进去,使用的时候需注意这一点。这篇文章(点击跳转)说可以解决一次性打包所有aar不过我没有试过。
然后在dependencies里配置:
dependencies {
…
implementation(name:‘base_lib-release’, ext:‘aar’)
}
AS3.0以前使用的compile,3.0以后都使用implementation关键字进行编译。
如果你使用的aar是release的并且混淆了,假如你有对应源码的话,在查看aar中的某个类源码时,点击进去然后在右上角可以选择添加源码路径:
点击choose sources选择对应的源码路径,这样添加了以后就可以看到源码了并且debug时也能进到源码里面,但是使用aar包的方式在debug时只能由app中的断点进入而不能直接在aar包对应的源码中添加断点,这也是aar不方便的一个地方。
另外,当你想要更换对应的libs下面的aar包的时候,一般情况下直接copy新的aar包替换掉老的即可,但我在使用的过程中发现有时这样不会起作用,替换了aar包之后代码里引用的还是老的aar包的代码,比如我新加的方法一直找不到,这个时候可能需要一些特殊操作,我的尝试是在右边gradle栏点击cleanBuild Cache之后然后点击刷新的按钮:
如果还不行,就多点几次刷新按钮,如果还是不行就只能手动删除对应的缓存文件了,我的AS缓存配置是在D盘,对应的aar包缓存目录是在D:\Android.gradle\caches\transforms-1\files-1.1\base_lib-release.aar/下面:
可以看到对应的base_lib-release.aar目录下面有很多的缓存文件,这可能是不同项目引用同一个aar包的缓存,我们将该目录下的缓存都删掉,然后重新到项目中执行cleanBuild Cache和刷新操作,这样aar缓存应该会更新为最新的了,app中可以引用aar中的代码了。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
最后送福利了,现在关注我可以获取包含源码解析,自定义View,动画实现,架构分享等。
内容难度适中,篇幅精炼,每天只需花上十几分钟阅读即可。
大家可以跟我一起探讨,有flutter—底层开发—性能优化—移动架构—资深UI工程师 —NDK相关专业人员和视频教学资料,还有更多面试题等你来拿
性能优化—移动架构—资深UI工程师 —NDK相关专业人员和视频教学资料,还有更多面试题等你来拿**
[外链图片转存中…(img-gKFhAMmi-1711853326748)]