最笨的解决android打包aar中引入远程依赖资源加载不到的问题
为了功能模块化和功能的复用,我们可以把具体的模块封装成库,做成.aar文件供别人项目使用,但是在开发library的时候可能会用到其他第三方的库,一般我们会在library的gradle文件中进行添加依赖,但是在将library制作成.aar供其他的项目使用的时候,如果用到第三方远程库里面的资源会报错,找不到。
业务场景
- myapp 依赖于mylibrary-release.aar
- library-release.aar又依赖于xxx-第三方
- 当myapp使用xxx-第三方第三方的时候会出现资源找不到而崩溃
具体操作如下
1、 创建一个myapp测试项目
2、然后new Module创建一个library;
3、 library在开发的时候依赖第三方远程库 thirdLib
implementation 'xxx.xxx:thirdLib'
4、 library中功能写完了可以打包成 library-release.aar供别人使用,aar打包方法
5、myapp中使用library-release.aar,首先将library-release.aar复制到app的libs目录下,然后再app的gradle文件中做如下配置
android {。。。。repositories {flatDir {dirs 'libs'}}
}
dependencies {//自定义库compile(name: 'library-release', ext: "aar")
}
6、做完以上配置就可以run app到手机上进行验证library中的内容是否可用;会发现library中基础功能界面是没问题的,但是当涉及到thirdLib中的内容的时候就包资源找不到崩溃(比如thirdLib是调用扫码功能)
解决方案
将thirdLib的依赖同样的放到app的gradle中,如下
android {。。。。repositories {flatDir {dirs 'libs'}}
}
dependencies {//自定义库compile(name: 'library-release', ext: "aar")//第三方依赖implementation 'xxx.xxx:thirdLib'
}
这么配置了重新打包运行,就能找到thirdLib的资源了,(比如扫码功能就可以正常使用了)
与一番三
要是有n个第三方也是同样的操作;其实不依赖远程库,将远程库做成.aar供library使用也是同样的套路;不足就是应用的地方重复太多,给别人使用不怎么方便,得提供对应的配置文档,如果有更好的方式可以交流。所以我这是最笨的方式哦
最笨的解决android打包aar中引入远程依赖资源加载不到的问题相关推荐
- Unity中的三种资源加载和卸载
前言 内容转载自: https://www.cnblogs.com/zhoujiangyue/articles/7066070.html. Unity中三种资源加载方式: 1.静态引用.具体操作:创建 ...
- android 打包aar,和引入aar
一:先把项目修改为 "library" 修改app下的build.gradle中的 "apply plugin:'com.android.application' &qu ...
- 卓盟科技: 动态资源加载技术背后的兼容性升级 | Android 开发者故事
在游戏变得日益复杂的今天,一根加载进度条不再仅仅只是开启冒险的倒计时,更是连接玩家与开发者的信使. 玩家们总是希望游戏能马上加载完毕,这意味着 "加载" 这件事情本身也有轻重缓急: ...
- composition java_阿里P7架构师通过源码浅析Java中的资源加载
一. 前提 最近在做一个基础组件项目刚好需要用到JDK中的资源加载,这里说到的资源包括类文件和其他静态资源,刚好需要重新补充一下类加载器和资源加载的相关知识,整理成一篇文章. 二. 什么是类加载器 虚 ...
- Android 打包aar包含第三方aar 实践
Android 打包aar包含第三方aar 因项目需要,打包aar包含第三方aar,如果直接对module进行打包会产生一些问题. * What went wrong: Direct local .a ...
- android 在自定义的listview(有刷新加载项)列表中,数据过少时不能铺满整个屏幕时,header和footer同时显示问题...
android 在自定义的listview(有刷新加载项)列表中,数据过少时,当刷新时,加载项也会显示,这是很头疼的一个问题,查阅了一些资料,总结了一个比较不错的方法: 原来代码: 1 @Overr ...
- 【Web】解决简书图片不显示问题“系统维护中,图片暂时无法加载”
个人博客: http://www.milovetingting.cn 简书不显示图片的解决方法 首次编辑于2019-6-6 最近几天在浏览简书上的文章时,发现图片显示不出来,提示"系统维护中 ...
- java动态加载jar时,jar中还有第三方jar无法加载的解决方法
java动态加载jar时,jar中还有第三方jar无法加载的解决方法 当java插件化开发时,即一个java程序在运行的情况下动态加载另一个jar,网上大多数的方法如下 public static v ...
- android progressdialog 背景色,怎么在android中利用ProgressDialog实现一个加载效果
怎么在android中利用ProgressDialog实现一个加载效果 发布时间:2020-12-07 17:00:07 来源:亿速云 阅读:77 作者:Leah 怎么在android中利用Progr ...
最新文章
- 技术人生:如何成为一位优秀的程序员
- 计算机机械应用,浅析计算机技术在机械自动化的应用(原稿)
- java积分签到功能_大河客户端积分商城上线,看新闻就能换取各种超实用奖品,来约...
- 致远今目标移动APP无法脱离PC单独使用
- 吴恩达DeepLearningCourse2-改善深层神经网络:超参数调试、正则化以及优化
- NB-IoTDTU对比于3G/4G DTU的区别和优势
- 【数字逻辑 Verilog】全面剖析数据选择器——从基础到拓展,从理论到设计的实现,从表面到本质
- 跨域获取后台数据undefined_同源策略amp;JSONP跨域
- typora插入代码设置_一篇文章教会你如何在Markdown文档中插入数学公式
- $(document).ready(function(){}), $().ready(function(){}) 和 $(function(){}) 三个区别...
- 【高级】思科设备实现城域网ISIS+BGP+MPLS ***多域互通实战
- ViT (Vision Transformer) ---- RNN
- 【百度网盘】电脑版百度网盘二维码无法加载的问题
- 等价类划分法-案例剖析-设计测试用例
- 提供小图标(Icon)的网站(不定时更新)
- 十二进制加计数器-20151112
- php eclipse aptana,Eclipse安装Aptana插件(注意对应版本问题)
- java pdf转jpg_java pdf转换jpg
- MAALA3.9_初等矩阵和等价 (Elementary Matrices and Equivalence)
- 编程序,用getchar函数读人两个字符给c1和c2,然后分别用
热门文章
- android 快写笔记本,【求推荐】(写代码/续航长/散热好)的笔记本 - 笔记本电脑(Notebook)版 - 北大未名BBS...
- 视频直播延时、直播延迟的问题
- 小米R4A-千兆版本刷机
- ESP32无法搜索到手机热点的解决方法
- 某宝sign逆向(以商品评论采集为例)
- The device ‘/dev/sdd1‘ doesn‘t seem to have a valid NTFS
- buu Reverse学习记录(19) [GWCTF 2019]pyre
- MyBatis-Plus 中的代码生成器-新版
- IP路由原理、静态路由及动态路由区分
- python网络爬虫实战3——抓取新闻内文相关信息