看起来输出文件夹中apk文件的classes.dex与已安装的应用程序不同.

我正在使用classes.dex文件来解决一些安全问题,所以通常我解压缩最终的apk文件并从classes.dex文件中获取信息.但是当我在运行时读取classes.dex文件时文件大小是如此不同. (8MB vs 46KB)

应用程序本身工作得很好.有人说Proguard使classes.dex文件更轻,但我关闭了Proguard. (useProguard false,build.gradle中minifyEnabled false)

有什么我可以尝试的吗?先感谢您.

一句话摘要:

Android Studio构建的app / build / outputs / apk / app.apk文件的classes.dex与我可以从Android设备的实际应用安装位置找到的classes.dex不同.

解决方法:

实际上,android studio会进行转换,并且在构建时默认使用“compress”这个术语.

Android应用程序的编译过程与其他Java应用程序有很大不同.但它以相同的方式开始:使用javac命令将您的Java源代码文件编译为.class文件:

.class文件包含标准的Oracle JVM Java字节码.但Android设备不使用此字节码格式.相反,Android有自己独特的字节码格式,称为Dalvik. Dalvik字节码,如Oracle JVM字节码,是理论处理器的机器代码指令.

编译过程需要将.class文件和任何.jar库转换为包含Dalvik字节码的单个classes.dex文件.这是通过dx命令完成的:

这是您的classes.dex文件的生成方式.

然后将classes.dex文件和应用程序中的资源(如图像和布局)压缩为类似zip的文件,称为Android Package或.apk文件.这是通过Android资产包装工具或aapt完成的:

在构建过程中,您的proguard规则有助于

>收缩 – 检测并删除未使用的类,字段,方法和属性.

>优化 – 分析和优化方法的字节码.

> Obfuscate – 使用简短无意义的名称重命名剩余的类,字段和方法.

.

标签:android,android-studio,dex,android-gradle,android-proguard

来源: https://codeday.me/bug/20190627/1306911.html

vs android 压缩,Android Studio是否压缩classes.dex文件?相关推荐

  1. 第四章 常见 Android 文件格式(二)(classes.dex)

    文章目录 classes.dex DEX 文件结构 DEX 文件的验证与优化过程 DEX 文件的修改 MultiDex classes.dex 其中包含 APK 的可执行代码,是分析 Android ...

  2. 批量提取出apk文件中的classes.dex文件

    应用场景 如果需要批量分析apk以及每个apk文件中的classes.dex 文件.怎么提取出它们?将apk改后缀名变为.zip文件,之后在解压,提取出每个apk文件中的classes.dex文件,这 ...

  3. android 复制文件 代码,将android项目从一台计算机复制到另一台计算机后找不到classes.dex文件...

    我已经将两个android项目从一台机器复制到另一台机器上,并且我正试图在模拟器上运行相同的项目,但是每次我得到两个项目相同的错误.错误如下: C:\Users\Abhi\Desktop\Ashish ...

  4. 【Android 热修复】热修复原理 ( Dex 文件拷贝后续操作 | 外部存储空间权限申请 | 执行效果验证 | 源码资源 )

    文章目录 一.Dex 文件准备 二.外部存储空间权限申请 1.清单文件申请权限 2.动态申请权限 三.文件拷贝 1.文件拷贝 2.执行效果 四. 源码资源 一.Dex 文件准备 在 [Android ...

  5. Android N 7 【 classes.dex】反编译失败:com.googlecode.d2j.DexException: not support version.

    Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft Corporation.保留所有权利. D:\Android反编译工具[全]\2016\ ...

  6. 【Android 安全】DEX 加密 ( Java 工具开发 | 解压 apk 文件 | 加密生成 dex 文件 | 打包未签名 apk 文件 | 文件解压缩相关代码 )

    文章目录 一.解压 apk 文件 二.加密生成 dex 文件 三.打包未签名 apk 文件 四.完整代码示例 五.文件解压缩相关代码 六.执行结果 参考博客 : [Android 安全]DEX 加密 ...

  7. android dex 加固,Dex文件加固

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 这篇文章介绍一下自己学习dex加固的过程.虽然市面上比这篇文章介绍的技术要先进的多了,但还是从基础抓起吧.而且这种最简单 ...

  8. Android[art]-Android dex,odex,oat,vdex,art文件结构学习总结

    参考学习博客: Android Dex文件格式(一):https://blog.csdn.net/p312011150/article/details/80501690 dex文件解析(第三篇) :h ...

  9. java还原混淆代码,android混淆 android如何将混淆代码还原?

    android studio的混淆文件是哪个曾几何时,我们做了世上那最柔情的人,为一朵花低眉,为一朵云驻足,为一滴雨感动. 关于代码混淆的作用,就不多解释了,整个过程大致如下:在app下的build. ...

最新文章

  1. 开发网络爬虫应该怎样选择爬虫框架?
  2. 62. Search in Rotated Sorted Array【medium】
  3. probable oracle net,ORA-28547: connection to server failed, probable Oracle Net admin error
  4. IOS开发-通知与消息机制
  5. BZOJ3743 : [Coci2014]Kamp
  6. strstr,strrchr,strpos,strrpos的区别http://blog.qit...
  7. java 反射 内存_Java内存到反射入门
  8. 一键自动化部署web架构
  9. mqadmin命令运行出错
  10. python read函数菜鸟_Python
  11. hiho1015(kmp+统计出现次数)
  12. ucos信号量集源码分析
  13. jQuery-ui-autocomplete
  14. 手把手教你win10下lex与yacc的安装
  15. 学校计算机室电气设计,教学楼配电设计浅析
  16. Python中关于with open file as 的用法
  17. VapourSynth压制教程 【Waifu2x N卡 放大教程】
  18. mysql数据范围什么意思_MySQL数据库的数据类型以及取值范围详解
  19. 新手小白怎么学抖音运营?抖音运营5大技巧
  20. Wrong JPEG library version: library is 80, caller expects 62 解决办法

热门文章

  1. python界面长什么样图片_python界面是什么样的
  2. 4-pycharm找不到模块问题
  3. 协议转换器是怎么分类的?主要有哪些类别?
  4. 工业交换机防护等级介绍
  5. 32路视频光端机性能指标及视频特性介绍
  6. 【渝粤题库】广东开放大学 人力资源本 形成性考核
  7. 【渝粤题库】国家开放大学2021春1044合同法题目
  8. python怎么把数据写进txt_python 如何将数据写入本地txt文本文件的实现方法
  9. AI+遥感智能解译,赋能智慧城市规划革新(人工智能案例)
  10. 我们知道计算机的大小单位有 B, KB, MB 等,现在请你编写一个计算器进行大小单位换算。Java洛谷传智杯