android 引用jar的r文件,正确的方法来处理Android库的ant构建. Build从jar文件中排除R.class...
目前遇到的问题是我们使用ant生成的构建版本不包含R.class文件.看一下ADT build.xml,我看到了这个:
...
includes="**/*.class"
excludes="${project.app.package.path}/R.class ${project.app.package.path}/R$*.class ${project.app.package.path}/BuildConfig.class"/>
excludes="**/*.java ${android.package.excludes}" />
目前构建抓取classes.jar文件,但正如您在上面看到的,这不包括R.class文件,因此当库尝试获取外部化字符串时,它会在NoClassDefFoundError上爆炸
Important change:
We have changed the way Library Projects generate and package R classes:
The R class is not packaged in the jar output of Library Projects anymore.
Library Project do not generate the R class for Library Projects they depend on. Only main application projects generates the Library R classes alongside their own.
This means that library projects cannot import the R class from another library project they depend on. This is not necessary anyway, as their own R class includes all the necessary resources.
Note that app projects can still import the R classes from referenced Library Projects, but again, this is not needed as their own R classes include all the resources.
那么,鉴于此,打包Android库项目的正确方法是什么?
更新2:
因此,我们通过手动将R.class和R $* .class文件打包到jar中来解决此问题.
我不知道这是否是打包Android库的“正确”方式,因为ADT构建脚本将这些删除.如果没有人建议采用更“正确”的方式来做到这一点,我会将此作为答案.
android 引用jar的r文件,正确的方法来处理Android库的ant构建. Build从jar文件中排除R.class...相关推荐
- android 文件加密解决方法,如何在Android中加密和解密文件?
我有类似的问题,加密/解密我提出了这个解决方案: public static byte[] generateKey(String password) throws Exception { byte[] ...
- Android编译调用FFmpeg API,自己写方法,编译so库
作者:谭东 时间:2017年9月19日 环境:Windows 8.1专业版 NDK版本:android-ndk-r14b FFmpeg版本:FFmpeg 3.0.2 "Einstein&qu ...
- java对.txt文件进行读取方法实战---室友是网络安全方向,帮他提取文件里的特定ip
需求:类似如下的txt文件,现在需要把每一小段包含open的ip地址输出,这样他就可以去攻击有用ip了,这孩子真坏,哈哈. Nmap scan report for 123.59.68.48 Host ...
- Android开发之Android Studio依赖aar包的四种方法(附加第三方库依赖方式)
使用AS任意版本: 方法一: repositories {flatDir {dirs 'libs'}} implementation (name: 'paylibrary_v1.0', ext: 'a ...
- android+对比标签选择顺序是否正确的是,2019年Android题库含答案.docx
1.在android程序中,Log.w()用于输出什么级别的日志信息?( C ) A.调试 B.信息 C.警告 D.错误 2.在Activity中需要找到一个id是bookName的的TextView ...
- android 文件加密解决方法,一种Android平台的文件快速加密以及解密方法与流程
本发明属于数据安全领域,具体涉及一种Android平台的文件快速加密以及解密方法. 背景技术: 目前移动办公系统极大地提升了企.事业单位的工作效率,而带装有办公应用的智能设备中会存储一些较高机密性的文 ...
- android 盒子 关闭电视,电视盒子正确使用方法,速速来取!
很多人可能不了解,家庭标配的电视盒子如果被错误使用,会导致其无法发挥最大作用.今天,小智就跟大家聊聊如何正确使用电视盒子,记住以下几点,你的电视盒子寿命才会有保证. 一.保持干燥环境,远离水源 如果电 ...
- if函数中的android,java - 我需要帮助将IF语句方法更改为Android Studio中的SWITCH情况 - 堆栈内存溢出...
我正在Android Studio上的一个项目上工作,并且正在尝试创建过滤器. 我向其中添加了一些Checkboxes ,我想用它过滤我的RecyclerView . 使用IF语句,我可以做到,但是据 ...
- android端口数据包,【图片】android抓包工具fiddler抓包使用方法 跟踪监控android数据包【中国红客联盟吧】_百度贴吧...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 md D:\Android_kitchen_v223_CN\home\kitchen\WORKING_mk\data\app >nul 2>这 ...
最新文章
- Android 编译报错:Could not get resource
- 怎样知道邮箱的端口_AllenNLP源码拓展——训练结束向邮箱发邮件
- 【中级软考】什么是“敏捷过程的开发方法(敏捷方法agile)“(极限编程XP、特征驱动开发FDD、并列争球法Scrum、水晶法Crystal、开放源码法、自适应软件开发 ASD方法)
- 企业应用人工智能面临的挑战
- /hgfs下无共享文件夹?/mnt下没有hgfs文件夹?vmhgfs-fuse:找不到命令?
- Flume整合SparkStreaming出现UnsupportedClassVersionError: org/apache/spark/streaming/flume/sink/SparkFlum
- vue mysql webapp_基于Laravel+VueJS实战开发WebAPP
- 为什么要用python不用origin_Python告诉你为什么百度已死
- 智能网联汽车云控系统第2部分:车云数据交互规范
- 创建AWS VPC Peering
- requested an insecure resource的解决方法
- 检查压缩包是否损坏_【安全知识】运动安全带检查PPE(个人防护装备)检查程序与表格...
- Misc 自动拼图 CTF
- 小新pro16独显版安装NVIDIA驱动
- python实现将深度学习应用于医学图像以辅助医疗
- [paper]Intriguing properties of neural networks(L-BFGS)
- ClickHouse函数操作大全
- C# winform抽拉式菜单栏设计的一种方法
- WordPress优化教程大全
- C语言free空空指针,dmc: Dynamic Memory Check (DMC) , 解决C语言空指针、悬空指针、越界访问、野指针问题的一个方案。...