前言:

  当你开始开发一个自己的sdk前,应该先明确是打包成jar包还是aar包。jar包和aar包主要的区别是:aar包可以把项目里的资源文件下的资源打包进sdk中,而jar则不打包资源文件。所以,如果你希望你的sdk提供一些界面供使用者直接使用,那么建议打包为aar。

开发aar过程中常遇到的坑:

  关于aar的坑,尤其是第三方依赖无法打包进aar的问题,可以看下面这篇文章,个人感觉作者总结得已经比较到位了,只是对于文章中第七点关于混淆的问题,本人在开发过程中倒是没有遇到,将混淆规则直接写在sdk库的proguard-rules.pro文件中,最后打包aar还是混淆了的。这里是文章链接:https://zhuanlan.zhihu.com/p/34518236

aar打包:

  1.打开AS右侧的gradle

  2.找到项目root目录下的Tasks-build,双击assesmbleDebug或assesmbelRelease后开始打包:


  3.打包完毕后到build-outputs-aar目录下拷贝出来用即可:

使用

  1.将aar包放入你主项目的libs目录下:

  2.在你主项目的build.gradle文件的dependencies节点中将*.aar添加到fileTree中:

SDK之aar封装总结相关推荐

  1. 普歌-腾讯云短信+使用node发送短信(3种方法API、SDK)、封装工具、搭建web服务、写接口、调用接口发送短信、时效性判断、验证验证码的正确性(下)

    普歌-结合腾讯云短信服务+node搭建一个简单的发送短信web小项目 涉及技术: 腾讯云服务 后端服务:node+express 前端搭建:html+js 前言:本来这篇博客应该很早就发了,中间有一些 ...

  2. iOS中SDK的简单封装与使用

    一.功能总述 在博客开始的第一部分,我们先来看一下我们最终要实现的效果.下图中所表述的就是我们今天博客中要做的事情,下方的App One和App Two都植入了我们将要封装的LoginSDK, 两个A ...

  3. c#通过HTTPS获取华为北向数据(一)——.NET的sdk和json封装

    第一步 获取华为云物联网平台的证书 (需要证书的可以留言) 第二个证书在华为oceanconnect上传() 本次测试c#端只需要第二个证书就可完成 首先我们看先看看它的api 应为我们只需要读取NB ...

  4. 封装了一套WeCenter的IOS SDK

    度过了忙碌且迷茫的2015年,迎来了的郁闷且彷徨的2016年. 与哥们商量做些什么,谈不上创业也不是项目,只是想让2016年不必如2015年一样迷茫,也慰藉一下2016年的彷徨. 方向么,考察了几个行 ...

  5. AndroidStudio脚本命令指定AAR生成目录与版本号

    A build.gradle全局常量: //根路径def ROOT_PATH = rootProject.rootDir.pathdef GROUP = "com.genialsir.mob ...

  6. android aar编程,AndroidStudio脚本命令指定AAR生成目录与版本号

    A build.gradle全局常量: //根路径 def ROOT_PATH = rootProject.rootDir.path def GROUP = "com.genialsir.m ...

  7. android微信动画制作,动画制作轻量级SDK:PAG六大优势助力开发

    原标题:动画制作轻量级SDK:PAG六大优势助力开发 动画特效可以辅助视觉制作焦点,引导注意力的方向,越来越为广大视觉设计师青睐,并广泛应用于各类场景开发. 关于动画设计工具,既有 Framer.js ...

  8. Android SDK 开发——发布使用踩坑之路

    前言 在 Android 开发过程中,有些功能是通用的,或者是多个业务方都需要使用的. 为了统一功能逻辑及避免重复开发,因此将该功能开发成一个 SDK 是相当有必要的. 背景 刚好最近自己遇到了类似需 ...

  9. Android 手游聚合SDK那些事

    前言 在安卓游戏SDK这个技术领域呆了已经有4年多,从游戏发行中的一员逐渐转为游戏研发中的一员.从开始什么都不懂的菜鸟,摸爬滚打了几年,多多少少对这个行业以及技术领域有了相对成熟的理解.本文纯概念性的 ...

最新文章

  1. python3的星期函数_calendar在python3时间中有哪些常用函数?怎么用?
  2. Git(一)之基本操作详解
  3. TessorFlow学习 之 序言
  4. Redis服务停止报错解决方案[NOAUTH Authentication required]
  5. 使用PyTorch从零开始实现YOLO-V3目标检测算法 (四)
  6. 解决This picacion faied to trt becuse t could, not find or load the Qt platform plugin “windows““问题
  7. 与众不同 制作会唱歌的WinRAR - imsoft.cnblogs
  8. LeetCode 1506. Find Root of N-Ary Tree(异或)
  9. 2019 年度程序员吸金榜:你排第几?
  10. opencv配置原理
  11. java正则表达式大全(常用)
  12. Java基础知识总结(超详细整理)
  13. 如何将长截图转换成TXT呢?
  14. 数据库实验五-数据库设计实验
  15. 【数学建模笔记 24】数学建模的时间序列模型
  16. 湖北汽车工业学院校园导游咨询与最短路径
  17. linux源码编译安装apache( httpd-2.4.53)处理服务器支持 TLS Client-initiated 重协商攻击(CVE-2011-1473)
  18. 《可以量化的管理学》目录
  19. 巴别时代php面试题,巴别时代遇到的函数
  20. 我的世界服务器自动被踢怎么可以进去,我的世界中国版服务器中如何解决玩家作弊的简单方法...

热门文章

  1. 【黄啊码】MySQL入门—5、数据库小技巧:单个列group by就会,多个列呢?
  2. php webshell 木马,消灭php webshell与一句话木马
  3. 2023年天津农学院专升本专业课报名缴费时间考试安排
  4. 2019云计算机峰会,计算机学院师生参加“2019华为云城市峰会”
  5. ipython和pycharm的区别_ipython和pycharm有什么区别
  6. CentOS.7卸载与安装Nvidia Driver
  7. 油管大神教波士顿机器狗学撒尿-给自己倒啤酒,网友:太恶趣味了
  8. 甲骨文一键修改root密码
  9. [JSOI2009]有趣的游戏
  10. Openlayers 6 零基础教程