使用Gradle的com.android.library插件构建aar的几个神坑

使用apply plugin: 'com.android.library'方式,可以将so,res,classes.jar,AndroidManifest.xml等一起构建成aar包,供别的模块使用。其中遇到了几个神坑,记录一下。

神坑一: aar中的so不能进行调试。见: https://code.google.com/p/android/issues/detail?id=202611

神坑二: aar包中的so是没有strip掉debug信息的,被坑得一脸狗血。见: https://code.google.com/p/android/issues/detail?id=222831

解决方法: Google在模块依赖上面的bug不少,很多开发者都反馈了,目前还没有来得及修复,当下只能避免使用apply plugin: 'com.android.library'方式打包,自己编写gradle的task构建aar包。

其实aar包很简单,就是一个普通的压缩包,只要参考目录结构,自己构建即可。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏蛋未明的专栏

PHP压测优化

32930
来自专栏熊训德的专栏

Hbase Replicaition 在腾讯云中应用概述

Hbase 的 Repliation 是通过 Zookeeper 的协助,从 Master 集群异步往 Slave 集群写 WAL 实现的。可以实现典型的 Ma...

93850
来自专栏Spark学习技巧

调试flink源码

本文主要是讲讲flink的源码编译,案例运行,flink源码调试过程。调试flink的源码及案例,需要先clone工程,编一下源码,去掉规范检查,修改工程,最后...

76450
来自专栏从零开始学自动化测试

selenium+python自动化94-弹出层死活定位不到

前言 部分小伙伴学了selenium的alert后,就不管啥弹出框都去用alert,这是行不通的,看到弹出框,先要确定是不是alert,是才能用,不是的话肯定不...

506100
来自专栏idba

ZanDB 开发清单

一 简介 从今年3月份开始,我和另外一位小伙伴王航威一起开发一套 数据库管理平台-ZanDB ,该平台主要使用Django 作为web 框架,使用 一款go语...

10930
来自专栏北京马哥教育

Linux架构之HA配置

简介 通过安装该Linux-HA软件,可以实现Linux双机系统的高可用性解决方案,实现双机系统的热备份,并能够做到双机之间的无缝切换,从而对外 提供稳定可靠...

48670
来自专栏BeJavaGod

fastdfs 图片服务器 使用java端作为客户端上传图片

之前有说道搭建fastdfs作为图片服务器,但是没有说明如何真正在代码里调用,那么今天大致讲一下,如何使用java客户端进行上传 首先你得要有一个客户端,导入到...

47240
来自专栏移动安全

如何在应用宝上架时进行免费APP加固?

友情提醒,加固完成后需下载加固包进行重签名(步骤8开始),重新在应用市场上传apk哦~

7.3K140
来自专栏Django Scrapy

python处理json数据(复杂的json转化成嵌套字典并处理)

一 什么是json json是一种轻量级的数据交换格式。它基于 [ECMAScript]((w3c制定的js规范)的一个子集,采用完全独立于编程语言的文本格式...

79070
来自专栏猛牛哥的博客

hetzner独服安装proxmox过程

1.2K40

扫码关注云+社区

领取腾讯云代金券