逆向开发环境准备

news2024/11/21 2:29:38

JDK安装

AndroidStudio安装

        默认sdk路径

                C:\Users\Administrator\AppData\Local\Android\Sdk

        将platform-tools所在的目录添加到path

                C:\Users\Administrator\AppData\Local\Android\Sdk\platform-tools

                主要目的是使用该目录下的adb等命令

        将tools所在的目录添加到path

                 C:\Users\Administrator\AppData\Local\Android\Sdk\tools

        NDK根目录添加到path

                检验是否添加成功

                        ndk-build

MT管理器

        功能:

                查看Android系统目录结构

                查看apk的加固方式,以及签名版本等信息

                        

Android killer

        替换apktool

        案例:

                更改应用的名称和icon

                        killer内置的文本搜索工具不好用,对于名称和icon的更改,可自动化

                        自动化icon步骤

                                1.指定AndroidManifest.xml的路径

                                2.更改icon的名称

                                          <application  android:icon="@drawable/jrlogo"

                                3.将icon所对应的图片添加到如下目录

                                                                自动化名称步骤

                                1.确定AndroidManifest.xml中名字对应的字符串叫什么

                                       <application  android:label="@string/tudou_app_name"

                                2.在values/strings.xml中搜索相应的字符串,找到后将其替换

                                        <string name="tudou_app_name">土豆视频1</string>

                去除开屏广告界面

                        1.用adb判断目标app启动时,开屏广告界面所对应的Activity名称

                        2.在AndroidManifest.xml中将该Activity的launcher属性去除

                        

                   

APK的目录结构

        

APK的打包流程

        

apk的安装流程

        

虚拟机

        有三种虚拟机,分别为:java虚拟机,dalvik虚拟机,art虚拟机

        

odex和aot的区别

ODEX(Optimized DEX)

  • 定义:ODEX是优化过的DEX文件,即将APK中的classes.dex文件通过dex优化过程生成的优化文件。DEX文件是Android应用程序的编译产物,包含了应用程序的可执行代码。
  • 用途:ODEX文件用于加快软件的启动速度,减少对RAM的占用。在Android 5.0之前,APK安装时会进行DEX文件的验证和优化,生成ODEX文件。运行APK时,直接加载ODEX文件,避免了重复验证和优化,从而提高了响应速度。

OAT(Optimized Android Runtime)

  • 定义:OAT是ART(Android Runtime)虚拟机运行的文件,是ELF格式的二进制文件,包含了DEX文件和编译出的本地机器指令。
  • 用途:从Android 5.0开始,系统引入了ART运行时环境,取代了之前的Dalvik虚拟机。ART在安装应用时会进行预编译,将DEX文件转换成OAT文件,这些文件包含了编译后的机器码,因此可以直接由处理器执行,无需在应用运行时再进行即时编译(JIT),从而提高了应用的运行效率。

二、生成与存储

ODEX

  • 生成:在Android 5.0之前的版本中,APK安装时通过dexopt工具生成ODEX文件。dexopt会对DEX文件进行优化,并生成包含优化结果的ODEX文件。
  • 存储:ODEX文件通常存储在/data/dalvik-cache目录下,与APK文件分开存储。

OAT

  • 生成:在Android 5.0及以后的版本中,APK安装时通过dex2oat工具将DEX文件编译成OAT文件。dex2oat负责将DEX字节码转换成特定于处理器的机器码。
  • 存储:OAT文件同样存储在/data/dalvik-cache目录下,但格式和内容与ODEX文件不同。

三、文件格式与性能

文件格式

  • ODEX:虽然ODEX文件是优化过的DEX文件,但其本质上仍然是DEX格式的一种变体。它包含了经过优化的DEX代码和一些额外的元数据。
  • OAT:OAT文件是ELF格式的二进制文件,包含了DEX代码和编译后的本地机器指令。与ODEX相比,OAT文件的结构更加复杂,但执行效率更高。

性能

  • ODEX:虽然ODEX文件加快了软件的启动速度,但在运行时仍需要JIT编译器将DEX字节码转换成机器码才能执行。
  • OAT:OAT文件包含了编译后的机器码,因此可以直接由处理器执行,无需JIT编译过程。这使得应用的运行效率更高,响应速度更快。

综上所述,ODEX和OAT在Android系统中扮演着不同的角色,它们之间的区别主要体现在定义与用途、生成与存储以及文件格式与性能等方面。随着Android系统的发展,ART运行时环境和OAT文件逐渐成为主流趋势。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1881510.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LabVIEW风机跑合监控系统

开发了一种基于LabVIEW的风机跑合监控系统&#xff0c;提高风机测试的效率和安全性。系统通过自动控制风机的启停、实时监控电流和功率数据&#xff0c;并具有过流保护功能&#xff0c;有效减少了人工操作和安全隐患&#xff0c;提升了工业设备测试的自动化和智能化水平。 项目…

解决注册表删除Google报错问题

删除注册表中的Google时报错&#xff1a; 解决方式&#xff1a; 1、右键com.microsoft.browsercore&#xff0c;选择【权限】&#xff0c;在弹出的窗口中点击【高级】 2、可以看到现在的所有者是&#xff1a;TrustedInstaller&#xff0c;点击【更改】 3、点击选择用户和组中的…

东方航空逆向

声明(lianxi a15018601872) 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; …

问题解决|endnote文献手工导入

一、背景介绍 手工导入一篇文献是指手动编辑文献的相关信息Preference。为什么要手动这么麻烦&#xff1f;因为有的文献比较老只有纸质版本&#xff0c;有的文献信息不全&#xff0c;有的则是没有编码无法识别等等&#xff0c;需要手工录入&#xff1b;一般需要手工录入的情况比…

使用gradio搭建私有云ChatGLM3网页客户端

【图书推荐】《ChatGLM3大模型本地化部署、应用开发与微调》-CSDN博客 通过简单的代码领略一下ChatGLM3大模型_chatglm3 history怎么写-CSDN博客 对于一般使用网页端完成部署的用户来说&#xff0c;最少需要准备一个自定义的网页端界面。在网页端界面上&#xff0c;可以设置文…

5.SQL注入-通过union进行获取数据-字符型

通过union进行获取数据-字符型 在pikachu上查询kobe&#xff0c;出现了两个字段id和email 在后台和前端查询是一样的出现数据&#xff0c;也就是有两个字段&#xff1a;id和email 通过sql语句order by 以列的形式排序&#xff0c;没有第三列&#xff0c;所以order by 3 报…

快速将网页封装成APP:小猪APP分发助您一臂之力

你是否曾经有一个绝妙的网页&#xff0c;但苦于无法将其变成手机APP&#xff1f;其实&#xff0c;你并不孤单。越来越多的企业和开发者希望将自己的网站封装成APP&#xff0c;以便更好地接触到移动端用户。我们就来聊聊如何快速将网页封装成APP&#xff0c;并探讨小猪APP分发在…

可燃气体报警器检测机构:严格遵守的安全标准

随着工业、商业和家庭领域对安全要求的不断提高&#xff0c;可燃气体报警器作为预防火灾和爆炸事故的重要设备&#xff0c;其性能稳定性和可靠性越来越受到关注。 可燃气体报警器检测机构应运而生&#xff0c;为确保这些设备的有效运行发挥着不可替代的作用。 接下来&#xf…

Python中的数据结构

一.堆 堆的建立可以通过导入heapq库来实现 在Python中建立的是最小堆 即heap[k]<heap[2*k1]and heap[k]<heap[2*k2] 下面是一些 堆使用的方法 heapq.heappush([],加入的元素) heapq.heappop(heap)弹出最小的元素 heapq.nlargest(3,heap)返回最大的三个元素 hea…

Vue笔记-vue中使用JS创建的函数

主要是公司对前端要求不高&#xff0c;能解决问题就行了&#xff0c;前端不太熟&#xff0c;用js这种处理起来方便&#xff0c;在此记录下。 在src中创建一个api目录&#xff0c;新建custom.js export const getDivHeightByClass (className) > {let divElements docume…

Java面试题--JVM大厂篇之G1 GC的分区管理方式如何减少应用线程的影响

目录 引言: 正文: 1. 区域划分&#xff08;Region&#xff09; 2. 并行和并发回收 3. 区域优先回收&#xff08;Garbage First&#xff09; 4. 可预测的停顿时间 5. 分阶段回收 6. 复制和压缩 实际效果: 场景举例 1. 减少单次GC的影响 2. 支持高并发环境 3. 优…

设计模式-代理模式和装饰者模式

二者都是结构型的设计模式. 1.代理模式 1.1定义 为其他对象提供一种代理以控制对这个对象的访问. 代理从code实现方面分为静态代理和动态代理两种&#xff1b; 从适用范围来看,分为远程代理,虚拟代理,保护代理,智能引用几种. 远程代理:为某个对象在不同的内存地址空间提供…

张小凡砍灵竹

题目 张小凡刚入青云门时&#xff0c;拜入大竹峰田不易门下&#xff0c;师父要求他上山砍灵竹锻炼体力。第一天他砍了1根&#xff0c;之后的九天他分别砍了2&#xff0c;4&#xff0c;5&#xff0c;5&#xff0c;8&#xff0c;7&#xff0c;9&#xff0c;12&#xff0c;2根&am…

【Python】已解决:AttributeError: ‘Series‘ object has no attribute ‘sortlevel‘

文章目录 一、分析问题背景二、可能出错的原因三、错误代码示例四、正确代码示例五、注意事项 已解决&#xff1a;AttributeError: ‘Series‘ object has no attribute ‘sortlevel‘ 一、分析问题背景 在数据分析和处理过程中&#xff0c;Pandas库是一个非常强大的工具。它…

Tomcat的安装和虚拟主机和context配置

一、 安装Tomcat 注意&#xff1a;安装 tomcat 前必须先部署JDK 1. 安装JDK 方法1&#xff1a;Oracle JDK 的二进制文件安装 [rootnode5 ~]# mkdir /data [rootnode5 ~]# cd /data/ [rootnode5 data]# rz[rootnode5 data]# ls jdk-8u291-linux-x64.tar.gz [rootnode5 data]…

基于springboot+vue+uniapp的语言课学习系统小程序

开发语言&#xff1a;Java框架&#xff1a;springbootuniappJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#…

数据恢复篇:计算机格式化后如何恢复照片

您想了解如何从已格式化的笔记本电脑或台式机中恢复已删除的照片吗&#xff1f;这篇文章解释了如何使用最佳格式照片恢复软件来做到这一点。格式化计算机后&#xff0c;您可以通过简单的步骤恢复已删除的图像。 将照片保存在笔记本电脑或 PC 硬盘上是很常见的。与相机存储卡和…

02-《石莲》

石 莲 石莲&#xff08;学名&#xff1a;Sinocrassula indica A.Berger&#xff09;&#xff0c;别名因地卡&#xff0c;为二年生草本植物&#xff0c;全株无毛&#xff0c;具须根。花茎高15-60厘米&#xff0c;直立&#xff0c;常被微乳头状突起。茎生叶互生&#xff0c;宽倒披…

“吃饭大学”!中国大学食堂排行TOP10(含西电)

同学们们&#xff0c;考研择校考虑的因素除了学术&#xff0c;地理位置等方面&#xff0c;你们还会考虑哪些因素呢&#xff1f;小研作为一个吃货&#xff0c;必定会考虑的一个因素当然是大学的食堂美食啊~ 那中国超级好吃的大学食堂在哪&#xff1f;一起来看看有没有你的目标院…

文华均线交叉多空买卖点-支撑压力自动画线-波浪AB画线指标公式

A1:MA(C,5); A2:MA(C,10); MA1:MA(A1,15); MA2:MA(A2,15); JC:CROSS(MA1,MA2); SC:CROSSDOWN(MA1,MA2); N:1; JC1:BARSLAST(JC)N; SC1:BARSLAST(SC)N; VERTLINE(SC,COLORRED),DOT; VERTLINE(JC,COLORGREEN),DOT; H1:VALUEWHEN(SC,HHV(H,JC1)),COLORRED;//当前死叉到…