当前位置: 首页 > news >正文

高中课程免费教学网站武汉seo网络优化公司

高中课程免费教学网站,武汉seo网络优化公司,有的网站显示正在建设中,用wordpress搭建官网关于安卓打包生成aar,jar方式 背景 在开发的过程中,主项目引入三方功能的方式有很多,主要是以下几个方面: (1)直接引入源代码module(优点:方便修改源码,易于维护&#…

关于安卓打包生成aar,jar方式

背景

在开发的过程中,主项目引入三方功能的方式有很多,主要是以下几个方面:
(1)直接引入源代码module(优点:方便修改源码,易于维护,迭代。缺点:对于新手不友好,可能会遇到依赖兼容问题,需要排除并且适配)
(2)远程依赖,目前主要是用maven依赖。(优点:几行代码即可依赖完成。缺点,库存在问题的话,修改很麻烦)
(3)直接引入jar或者aar。(module编译后的产物,优点:可增加混淆之类的规则,使代码更安全,隐蔽。缺点:本地修改会有难度,编译有一定的难度)

本文,就是讲述,如何使用androidstudio打包生成aar,jar。

环境

win10
jdk 11
jdk 8
as 4.0+
gradle 7.0+

编码

首要要搞懂,aar包和jar包有什么区别?很简单来说,aar包是在jar包上,增加了资源,例如layout,res。
如果你开发的是一个纯业务类型的库,可以打jar包。如果涉及到界面等逻辑,就需要打aar包了。

(一)生成aar包
首先,要有个androidstudio中的module。然后clean project,build project即可生成。具体目录,就是在module对于的build项目下查找,即可看到,结构如下图:
在这里插入图片描述
那么,又是如何生成release的aar包呢?
只需要点击右侧边栏的gradle->对应模块->other->assembleRelease,等待编译完成即可,编译后内容如下图:
在这里插入图片描述
上述就是一些关于model如何生成一个aar包的操作。

(二)生成jar包
对于生成一个jar包,比aar包要复杂一点。需要在模块目录的build.gradle文件,加入以下代码:

task makeJar(type: Copy) {//删除存在的delete 'build/libs/ztuiqueue.jar'//设置拷贝的文件from('build/intermediates/aar_main_jar/release/')//打进jar包后的文件目录into('output/libs/')//将classes.jar放入build/libs/目录下 //include ,exclude参数来设置过滤 //(我们只关心classes.jar这个文件)include('classes.jar')//重命名rename('classes.jar', 'ztuiqueue.jar')
}
makeJar.dependsOn(build)

其中,函数from中的路径,是随着gradle的版本不一样二变化的。需要在build目录下进行查找。
上述代码的意思,仅仅是把jar包复制出来,其实原jar包的目录是在比较深的层级的。

(三)代码混淆
对于完成了(一)(二)两步的朋友,现在已经接近尾声了。最后就是一个代码混淆的问题。如果不涉及混淆,请忽略该步骤。
对于module中的打包aar/jar代码混淆,需要在build.gradle文件中,buildTypes路径下,加入以下代码即可:

    buildTypes {release {minifyEnabled true/*模块混淆*/consumerProguardFiles 'proguard-rules-libxui-queue.pro'/*打包aar,jar混淆*/proguardFiles getDefaultProguardFile('proguard-android.txt'),'proguard-rules-libxui-queue.pro'}debug {minifyEnabled false/*模块混淆*/consumerProguardFiles 'proguard-rules-libxui-queue.pro'/*打包aar,jar混淆*/proguardFiles getDefaultProguardFile('proguard-android.txt'),'proguard-rules-libxui-queue.pro'}}

其中,很清晰明了的一句,就是 /打包aar,jar混淆/

            proguardFiles getDefaultProguardFile('proguard-android.txt'),'proguard-rules-libxui-queue.pro'

而“proguard-rules-libxui-queue.pro”请替换成你开发module的具体混淆文件名字即可。
上述代码的意思就是,如果是正式包,则开启混淆,测试包则不开启。当然,主项目的混淆状态也会直接影响子module的混淆状态。

注意

混淆的过程中,需要遵循对应的混淆原则。否则会出现无法识别的情况。
还有,对外的输出的jar包,aar包,也应该附带对应的混淆规则说明。

that‘s all-------------------------------------------------------------------------------

http://www.tj-hxxt.cn/news/5099.html

相关文章:

  • vs做的网站案例百度sem推广
  • 做网站的问题网络推广公司
  • 网站买流量是怎么做的宁德市医院东侨院区
  • 通信工程毕设可以做网站吗百度sem是什么意思
  • 动态网站建设案例教程视频近期的重大新闻
  • 网站模板无忧郑州seo排名优化公司
  • 计算机速成班培训关键词排名优化怎么做
  • 招聘网站开发需要多长时间好消息tvapp电视版
  • php网站留言板是怎么做的百度网盘下载慢
  • 360网站怎么做链接seo快速排名的方法
  • 网络课程的网站开发论文广告视频
  • 租赁网站空间域名备案
  • 百度地图api wordpress上海百度seo牛巨微
  • 山东专业企业网站建设南宁百度推广排名优化
  • 使用wampserver做响应式网站百度识图扫一扫入口
  • 无锡宏腾网站建设疫情最新消息
  • c 能和php一起做网站吗在线生成个人网站免费
  • 中企动力做网站真贵牛奶推广软文文章
  • 专业网站设计服务广告推广投放平台
  • 建设网站需要什么东西外链怎么发
  • 做网站公司 深圳信科推广公司经营范围
  • 网站建设案例行情百度2020新版下载
  • 广东上海专业网站建设公司排名seo科技网
  • 怎么在网上找做网站的客户企业网站推广有哪些方式
  • 网站需要证件seo基础课程
  • 重庆seo网络优化咨询热线韶关网站seo
  • 设计师作品展示网站网站排名提升软件
  • dede古典网站模板想做app推广项目在哪找
  • 做网站的收获每日新闻摘要30条
  • openresty wordpress网站优化排名易下拉软件