Android aar包集成与报错

       Android Studio引用AAR的方式,分为gradle7.0之前与7.0之后

一、集成步骤

     方法一:

    1.将对应的xxx.aar包复制到项目的libs目录下(xxx代表需要引入的aar包名称)

      

2.然后在模块的build.gradle文件中配置implementation files('libs/library.aar')

dependencies {
      implementation files('libs/library.aar')
}

     方法二:

     1.  单独新建文件夹 LocalRepo,在其内部新建staticip,新建build.gradle

2. build.gradle内容由于我引入的是yzwlnfcreadcard.aar,记得换成自己的aar包名称

configurations.maybeCreate("default")
artifacts.add("default", file("yzwlnfcreadcard.aar"))

3.引入的是yzwlnfcreadcard.aar,所以也需要把包复制进来

二、gradle7.0之前

  1.将 aar 包放入 library module 的 libs 目录下,然后在工程的 build.gradle文件中加入如下代码:

flatDir { dirs 'libs', '../moduleName/libs' }

注:将 moduleName 替换为你自己的 library module 的 name.

2.在 module 的 build.gradle 文件中添加依赖:

dependencies {
    implementation(name: 'aar包名', ext: 'aar')
 }

三、常见报错

集成完成,代码引用也没问题,但是一运行就报如下错误:

Execution failed for task ':app:mergeDebugJavaResource'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.MergeJavaResWorkAction
   > 2 files found with path 'org/bouncycastle/x509/CertPathReviewerMessages_de.properties' from inputs:
      - E:\project\ZhongNanXiaoyaDev\LocalRepo\staticip\build\.transforms\bdb601d81fa95af2bf0d3b2b3de9e234\transformed\jetified-yzwlnfcreadcard\jars\classes.jar
      - C:\Users\Administrator\.gradle\caches\transforms-3\5c9ef0b491c1ad4933dd3ce258a1758f\transformed\jetified-bcprov-jdk15on-1.59.jar
     Adding a packagingOptions block may help, please refer to
     https://developer.android.com/reference/tools/gradle-api/7.2/com/android/build/api/dsl/ResourcesPackagingOptions
     for more information

* Try:
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

  那是因为包冲突导致,按照第四步解决方案进行解决

四、解决方案

  在app目录下的build.gradle添加配置:

android {
    packagingOptions {
        pickFirst 'org/bouncycastle/x509/CertPathReviewerMessages_de.properties'
        pickFirst 'org/bouncycastle/x509/CertPathReviewerMessages.properties'
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/322927.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

geopandas 笔记:plot 的scheme

transbigdata 笔记:官方文档案例1(出租车GPS数据处理)-CSDN博客 3.3.1 节的内容的拓展,这里主要是比较各个scheme的效果 主代码为:修改的就是第二行scheme的内容 plt.figure(1,(16, 6), dpi300) schemebox_plot #图…

在线协作白板WBO本地部署启动并结合内网穿透实现远程协同办公

文章目录 推荐前言1. 部署WBO白板2. 本地访问WBO白板3. Linux 安装cpolar4. 配置WBO公网访问地址5. 公网远程访问WBO白板6. 固定WBO白板公网地址 推荐 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击…

Overleaf IEEE白嫖即将失效!

之前白嫖Overleaf用IEEE的,最长只能到一月份了!(官方回复) 翻译一下: IEEE不支持这种Collaboratec白嫖了已经白嫖的,到2024年1月份过期没有白嫖的,已经无法获得了

大模型日报-20240115

即插即用,完美兼容:SD社区的图生视频插件I2V-Adapter来了 https://mp.weixin.qq.com/s/tlOWaMi0e6By__MUT414xA 图像到视频生成(I2V)任务旨在将静态图像转化为动态视频,这是计算机视觉领域的一大挑战。其难点在于从单…

opencv-py-基础操作

文章目录 阈值分割灰度图效果 二值化效果 二值化取反效果 截取效果 TOZERO效果 TOZERO取反效果 滤波均值滤波高斯滤波中值滤波 图像拼接简单的横向和纵向拼接效果(三幅图片分别是均值滤波,高斯滤波,中值滤波) 腐蚀与膨胀 阈值分割…

软件测试|使用holidays模块处理节假日

前言 在Python中,有一个名为 holidays 的模块,它可以帮助你轻松地处理节假日信息。该模块提供了一种方便的方式来确定特定日期是否是一个节假日,同时还支持不同国家和地区的节假日计算。本文将详细介绍如何使用 holidays 模块,包…

《JVM由浅入深学习九】 2024-01-15》JVM由简入深学习提升分(生产项目内存飙升分析)

目录 开头语内存飙升问题分析与案例问题背景:我华为云的一个服务器运行我的一个项目“csdn-automatic-triplet-0.0.1-SNAPSHOT.jar”,由于只是用来测试的服务器,只有2G,所以分配给堆的内存1024M查询内存使用(top指令&a…

3月济南|2024生物发酵系列展,不容错过的行业盛宴

2024生物技术产业装备展暨生物发酵系列展,由中国生物发酵产业协会主办,上海信世展览服务有限公司承办,于2024年3月5-7日在山东国际会展中心隆重举行。作为生物发酵产业具有专业性和权威性的行业盛会,期待携手继续共同前行&#xf…

德思特干货|德思特ADC/DAC静态参数测试系列(一)——什么是ADC转换点

在现代电子系统设计与高速通信、信号处理、雷达探测、医疗成像以及各种工业自动化应用中,模数转换器(ADC)和数模转换器(DAC)扮演着至关重要的角色。ADC负责将模拟信号精确且高效地转换为数字信号,以便于进行…

如何注释 PDF?注释PDF文件方法详情介绍

大多数使用 PDF 文档的用户都熟悉处理这种格式的文件时出现的困难。有些人仍然认为注释 PDF 的唯一方法是打印文档,使用笔或荧光笔然后扫描回来。 您可能需要向 PDF 添加注释、添加注释、覆盖一些文本或几何对象。经理、部门负责人在编辑公司内的合同、订单、发票或…

开源内容管理系统Wagtail本地安装运行并结合内网穿透实现公网访问

文章目录 前言1. 安装并运行Wagtail1.1 创建并激活虚拟环境 2. 安装cpolar内网穿透工具3. 实现Wagtail公网访问4. 固定的Wagtail公网地址 前言 Wagtail是一个用Python编写的开源CMS,建立在Django Web框架上。Wagtail 是一个基于 Django 的开源内容管理系统&#xf…

uniapp自带的选择日期的使用

年月日的下拉框 直接看代码 <view class"uni-title uni-common-pl">日期选择器</view><view class"uni-list"><view class"uni-list-cell"><view class"uni-list-cell-left">当前选择</view>&…

基于 IDEA 进行 Maven 工程构建

一、构建概念和构建过程 项目构建是指将源代码、依赖库和资源文件等转换成可执行或可部署的应用程序的过程&#xff0c;在这个过程中包括编译源代码、链接依赖库、打包和部署等多个步骤。 项目构建是软件开发过程中至关重要的一部分&#xff0c;它能够大大提高软件开发效率&…

街机模拟游戏逆向工程(HACKROM)教程:[2]68K汇编的一些规则

指令中的符号(#,$,%) 在指令中&#xff0c;我们最常见到的符号有#和$。 这其中的"#"符号是告诉汇编程序&#xff0c;这个符号后面的数值为一个立即数&#xff0c;而不是一个偏移值或一个地址。立即数可以理解为"单纯的一个数值"。我们会在后面通过一些实…

GPT有什么用?对哪些行业帮助比较大?无际Ai带来介绍

GPT 是“Generative Pre-trained Transformer”的缩写。这是一种由 OpenAI 开发的人工智能语言模型&#xff0c;它采用了变压器&#xff08;Transformer&#xff09;架构&#xff0c;并且在大规模文本数据上进行了预训练。GPT 系列模型的目标是生成具有高度连贯性和语义合理性的…

WordPress如何修改旧文章的发布日期让其变成新文章发布?

我们个人网站发展一段时间后&#xff0c;可能就不懂得发布什么内容了&#xff0c;这个时候可以考虑翻看以前的旧文章&#xff0c;必要时对其进行适当修改&#xff0c;然后修改它的发布日期变成当前日期重新发布&#xff0c;这样就会变成新文章重新出现在我们首页的文章列表中。…

【教学类-43-21】20240113 数独(三)11-12-13-14-15宫格 无空行A4模板 上下结构(附加3宫格 4宫格)

作品展示&#xff1a; 11-15宫格 A4 两份 下面空行做一点4-5宫格题目 &#xff1a; 已经制作没有分割线的连在一起的3-10宫格模板 【教学类-43-19】20240113 数独&#xff08;一&#xff09; 3-5-6-7-8-10宫格 无空行A4模板-CSDN博客文章浏览阅读399次&#xff0c;点赞13次…

3D建模素材分层渲染怎么操作?

在3D建模素材分层渲染过程中&#xff0c;需要将场景中的元素分到不同的层里&#xff0c;然后分别进行渲染。以下是一个简单的方法&#xff1a; 1、打开要渲染的3D建模素材。 2、在场景中选择要分层的元素&#xff0c;然后在软件的图层面板中新建图层&#xff0c;将元素拖拽到新…

代码随想录算法训练营第6天 | 242.有效的字母异位词 , 349. 两个数组的交集 , 202. 快乐数 , 1. 两数之和

哈希知识基础 文章链接&#xff1a;https://programmercarl.com/%E5%93%88%E5%B8%8C%E8%A1%A8%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80.html#%E5%93%88%E5%B8%8C%E8%A1%A8 242.有效的字母异位词 题目链接&#xff1a;https://leetcode.cn/problems/valid-anagram/description/…

CentOS7中将MySQL注册为系统服务开机启动

实际生产环境中为了避免重启服务器后所有的服务都手动启动带来的麻烦&#xff0c;建议所有基础服务都设置为开机自动启动。本章节我们主要演示在Centos7中如何将MySQL注册为系统服务&#xff0c;并实现开机自动启动。 ① 手动启动mysql&#xff0c;查看进程信息&#xff0c;复制…