最近因为项目需求开始整理一个SDK 以AAR的方式提供出去。在整理的过程中遇到了很多坑。

以下是一些总结希望能帮助遇到同样问题的人。

1.怎么导出AAR,这种文章太多了,我贴一个大家可以做参考。

http://blog.csdn.net/g777520/article/details/53331797

如果不关心 怎么生成jar包就直接往下滑,看第二节。基本操作就在这儿了。

2. 第一步的操作导出的AAR只是当前lib的代码内容,当前lib所依赖的其他lib或者依赖(jar包除外)都不会被打进AAR中。

类似 compile 'tv.danmaku.ijk.media:ijkplayer-java:0.7.9’ 
跟 compile project(':XXLib’)的依赖, 都不会打进去。这跟需求不匹配啊。需要解决。
查阅了很多资料如下:
http://blog.csdn.net/wwj_748/article/details/53230706
是相对详细的,但也只是简单介绍。
从文章中定位到了一个第三方的库是专门解决这种问题的。
使用的过程中遇到了一些问题,这些问题主要是
新老Android studio版本上文件的改动导致的。参考该工程的issue基本都是可以解决的。
说下重点你可能会遇到的一个错误的解决办法吧。

* Where:
Script '/Users/gy/temp/baiduIJK/LiveRoomLib/fat-aar.gradle' line: 220

* What went wrong:
Execution failed for task ':LiveRoomLib:generateRJava'.
> /LiveRoomLib/build/intermediates/exploded-aar/baiduIJK/XXXLib/unspecified/AndroidManifest.xml (No such file or directory)

这个错误是在导AAR的lib 下exploded-aar这个目录里没有其所以来的 lib的内容,较快的解决办法就是去XXXLib的

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #00f900; background-color: rgba(33, 33, 33, 0.65) }
span.s1 { }

XXXLib/build/outputs/aar

目录下将XXXLib的 arr coppy 到/LiveRoomLib/build/intermediates/exploded-aar/这个目录下进行解压,然后按照这个路径去存放你的工程。

亲测有效。

3.在翻阅资料的过程中又发现了

https://github.com/Vigi0303/fat-aar-plugin

这个lib说是解决了大部分的问题可以快速的导出需要的AAR,没有尝试,你们可以试下。

 
 
 
 
 

Android studio导出AAR包问题整理。的更多相关文章

  1. Android Studio导出Jar包

    这篇博客将介绍一下如何用Android Studio导出jar包,希望能给大家带来帮助. 首先需要修改build.gradle文件,在Android Studio中会显示多个build.gradle文 ...

  2. android studio生成aar包

    android studio生成aar包并在其他工程引用aar包 http://blog.csdn.net/getchance/article/details/47257389 用Android st ...

  3. android studio 生成aar包并在其他工程引用 (导入)aar包

    1.aar包是Android studio下打包android工程中src.res.lib后生成的aar文件,aar包导入其他android studio 工程后,其他工程可以方便引用源码和资源文件 ...

  4. Android Studio 导出jar包

    不像在Eclipse,可以直接导出jar包.AndroidStudio只可以生成aar包. 在网上看到许多朋友问怎么可以像Eclipse一样导出jar包,其实我们只要知道它的原理就可以了. 用jar命 ...

  5. Android Studio导出Jar包并混淆

    在Android Studio中,自带反编译查看class文件,如果没有混淆的话,class文件跟java文件基本没有区别了,为了保护,还是混淆的好. 网上看了不少资料,都是直接下载proguard额 ...

  6. android studio生成aar包并在其他工程引用aar包

    1.aar包是android studio下打包android工程中src.res.lib后生成的aar文件,aar包导入其他android studio 工程后,其他工程可以方便引用源码和资源文件 ...

  7. Android Studio 创建aar包与引用

    两者区别:*.jar: 只包含了class文件与清单文件 ,不包含资源文件,如图片等所有res中的文件.*.aar: 包含所有资源 ,class以及res资源文件全部包含 一.创建aar包1.创建一个 ...

  8. Android Studio添加aar包依赖

    1.将aar包考入需要依赖的模块的libs目录下 2.在需要依赖的模块的build.gradle中添加如下内容: dependencies { compile(name:'aar包名不带扩展名', e ...

  9. Android Studio 生成aar包,并非debug包,而是release包

    1.编写Module,作为library 下面是需要发布的aar包,上面的是随意的project 2.app依赖myLibrary 2.1 设置Project Structure 2.2 app依赖M ...

随机推荐

  1. JS+PHP实现用户输入数字后取得最大的值并显示为第几个

    目的:分清JS PHP的区别,拓宽思维 分析 1.利用JS的prompt输入用户想要输入的值. 2.利用HTML表单的text标签将输入的值传递给PHP处理文件 3.PHP进行数值判定,选出最大值和位 ...

  2. [0] Visual studio 2010 快捷键大全

    [窗口快捷键]Ctrl+W,W: 浏览器窗口 Ctrl+W,S: 解决方案管理器 Ctrl+W,C: 类视图 Ctrl+W,E: 错误列表 Ctrl+W,O: 输出视图 trl+W,P: 属性窗口 C ...

  3. react native-调用react-native-fs插件时,如果数据的接口是需要验证信息的,在android上运行报错

    调用react-native-fs插件时,如果数据的接口是需要验证信息的,在android上运行报错,而在iOS上运行没问题.原因是因为接口是有验证信息的,而调用这个插件时没有传入,在iOS上会自动加 ...

  4. Tomcat网页加载速度过慢的解决方法

    可以vim conf/server.xml,在# OS specific support.  $var _must_ be set to either true or false.下添加: JAVA_ ...

  5. 【Android Developers Training】 6. 配置Action Bar

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  6. 如何使用jedis进行发布订阅

    jedis实现发布订阅,是通过让发布者和订阅者同时对某个channel(频道)进行操作,订阅者订阅了某个频道例如channel1,发布者往这个channel1里面publish东西,在pubsubli ...

  7. 如何使用mybatis对mysql数据库进行操作,batis的增删改查

    1.先下载Mybatis和mysql connecrt的jar包 下载地址: 链接: https://pan.baidu.com/s/1kVFfF8N 密码: ypkb 导入jar包,maven的话可 ...

  8. 从浅入深剖析angular表单验证

    最近手上维护的组件剩下的BUG都是表单验证,而且公司的表单验证那块代码经历的几代人,里面的逻辑开始变得不清晰,而且代码结构不是很angular. 是很有必要深入了解表单验证. 入门之前,我觉得应该先了 ...

  9. JSON详细总结

    /** * Created by fa on 2016/3/15. */ var data = { name:"hello", children:[{ name:"chi ...

  10. 从一个针对ASP.NET MVC框架的Controller.Action的请求处理顺序来说整个请求过程。

    下面引用的所有代码都来自ASP.NET MVC的源码,但是可能只选取每个方法的其中一部分. System.Web.Routing.UrlRoutingModule在管道事件中注册PostResolve ...