mt管理器添加新文件,mt管理器怎么替换文件

首页 > 实用技巧 > 作者:YD1662023-06-04 00:56:16

注意反编译出来的 Java 代码只是用作参考,无法修改。要修改的话只能去修改 Smali 代码,然后再重新反编译成 Java 代码,对照查看修改是否正确。

做完修改后,你就可以回到编辑器主界面,点击菜单中的编译,生成新的 dex 文件。

DEX 工程

在 Dex 编辑器 中,MT 引入了工程这个概念。如果你是使用 Dex 编辑器,每当你修改完退出时,要么选择不保存,要么选择编译成新的 dex 文件,但不论如何,你添加的注释、哪些是新加的类、哪些类被修改了,这些记录都会丢失。

但是我们在修改 dex 文件时,一般不是一遍就能修改完的,需要多次修改和测试,保留上面所说的这些记录就十分有用,而现在,Dex 编辑器 都能做到这些。

创建工程

首先你要使用 Dex 编辑器 打开一个 dex 文件时,此时MT自动为我们创建了一个临时Dex工程。临时工程在退出后是会被删除的,所以你需要点击左上角的菜单,选择保存为工程

mt管理器添加新文件,mt管理器怎么替换文件(5)

保存完之后,当你在 Dex 编辑器 的主界面时,都可以放心地退出,不用担心丢失任何数据,更不用每次退出前还需要手动保存。

打开工程

MT 主界面打开侧拉栏,就可以看到你保存的所有工程了。

mt管理器添加新文件,mt管理器怎么替换文件(6)

点击就可以打开该工程并进入 Dex 编辑器 。注意,一定要从侧拉栏中打开工程,而不是打开之前的 dex 文件,直接打开 dex 文件是创建临时工程。

编译 Dex

修改完成之后,在 Dex 编辑器 的主界面,点击菜单中的编译即可生成新的 dex 文件。

如果你是在临时工程中编译,那么编译后会替换掉原来的 dex 文件。

如果你是在正式工程中编译,那么编译后的 dex 文件会放在工程目录下,你需要手动把 dex 替换到 apk 中。

工程目录

所有工程均放在 内部存储/MT2/projects 文件夹中,不能移动。

侧拉栏中长按工程即可快速进入工程目录。

mt管理器添加新文件,mt管理器怎么替换文件(7)

进入工程目录后可以看到 datasmali 两个文件夹。(2.5.0 版本开始支持多dex编辑,新增了 configbuild_dex 文件夹)

我们还可以在工程目录中自行放其它文件,比如可以放apk文件,以方便打包dex。

删除和重命名

所有工程均放在 内部存储/MT2/projects 文件夹中,首先你要进入这个文件夹(可以先快速进入一个工程目录,再返回上级),如果你要删除工程,那么就删掉和工程名字一样的文件夹,同理如果你要重命名工程,那么就重命名对应的文件夹。

类名问题

初始化时,每个类都是根据它的类名和包名进行存放,当我们在 smali 代码中修改了一个类的类名或包名时,它的位置和名称并不会改变,实际还是以 smali 代码中的定义为准。

举个例子,浏览界面中打开 com/android/example 中的 ClassA,在 smali 第一行定义了它的完整类名 Lcom/android/example/ClassA;,将它改成 Lcom/android/ClassB; 并保存后,你可能以为它会移动到 com/android 中,并且名称变成 ClassB,其实不会,你依旧需要在 com/android/example 中的 ClassA 打开它。

总的来说,smali 的文件名不需要与该文件中定义的类名一样,smali 文件所在的目录不需要与该文件中定义的包名对应,一切以 smali 文件内容中的定义为准。

搜索功能

Dex编辑器 支持搜索代码、类名、方法名、字段名、字符串、整数,可指定搜索路径、是否搜索子目录、是否区分大小写,支持正则表达式,支持在当前搜索结果中搜索,支持撤销搜索。

发起搜索的方式有两种,一是切换到搜索界面,直接点击对应选项,二是在浏览界面长按文件夹,点击弹出菜单中的搜索。

mt管理器添加新文件,mt管理器怎么替换文件(8)

上一页123下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.