反编译APK文件后如何快速定位包含某字符串的文件

反编译APK文件后如何快速定位包含某字符串的文件,第1张

一、Apk反编译得到Java源代码

下载上述反编译工具包,打开apk2java目录下的dex2jar-0.0.9.9文件夹,内含apk反编译成java源码工具,以及源码查看工具。

apk反编译工具dex2jar,是将apk中的classes.dex转化成jar文件

源码查看工具jdgui,是一个反编译工具,可以直接查看反编译后的jar包源代码

具体步骤:

首先将apk文件后缀改为zip并解压,得到其中的classes.dex,它就是java文件编译再通过dx工具打包而成的,将classes.dex复制到dex2jar.bat所在目录dex2jar-0.0.9.9文件夹。

在命令行下定位到dex2jar.bat所在目录,运行

dex2jar.bat classes.dex

生成

classes_dex2jar.jar

然后,进入jdgui文件夹双击jd-gui.exe,打开上面生成的jar包classes_dex2jar.jar,即可看到源代码了

二、apk反编译生成程序的源代码和图片、XML配置、语言资源等文件

如果是汉化软件,这将特别有用

首先还是要下载上述反编译工具包,其中最新的apktool,请到google code下载

apktool(google code)

具体步骤:

下载上述反编译工具包,打开apk2java目录下的apktool1.4.1文件夹,内含三个文件:aapt.exe,apktool.bat,apktool.jar

注:里面的apktool_bk.jar是备份的老版本,最好用最新的apktool.jar

在命令行下定位到apktool.bat文件夹,输入以下命令:apktool.bat d -f abc123.apk abc123

三、 图形化反编译apk

上述步骤一、二讲述了命令行反编译apk,现在提供一种图形化反编译工具:Androidfby

首先,下载上述反编译工具包,打开Androidfby目录,双击Android反编译工具.exe,就可以浏览打开要反编译的apk

威纶通触摸屏程序反编译后置换字体怎么换:1.

打开触摸屏编程软件,建立需要的画面。

2.

建立中文选择按钮:中文。选择多状态设置元件,设备选择为 HMI,地址为:LW-9134,模 式为:写入常数,设置常数为:0(这个为语言 1,中文显示)。

3.

建立英文选择按钮:English。选择多状态设置元件,设备选择为 HMI,地址为:LW-9134, 模式为:写入常数,设置常数为:1(这个为语言 2,英文显示)。

4.

建立文字库,编辑文字库里中文与英文。(以中文除蜡-英文 Waxremoval 为例)编辑。

使用 jdk 自带的 native2ascii.exe 工具,在你的 jdk文件夹/bin 下能找到。

针对你的问题,在 cmd 窗口中执行下面的命令即可(需要将 jdk文件夹/bin 加入到 path 环境变量中):

native2ascii -reverse C:\abc.java c:\abc2.java

(这里abc.java表示你的含有 \uxxxx 字符的java文件

c:\abc2.java 表示转后后的文件)

下面附上完整的 使用方法:

------------------------------

native2ascii用法解析

native2ascii是sun java sdk提供的一个工具。用来将别的文本类文件(比如

*.txt,*.ini,*.properties,*.java等等)编码转为Unicode编码。为什么要进行转码,

原因在于程序的国际化。

Java 编译器和其它 Java 工具只能处理含有 Latin-1 和/或 Unicode 编码(\udddd 记

号)字符的文件。native2ascii 将含有其它字符编码的文件转换成含 Latin-1 和/或

Unicode 编码字符的文件。

若省略 outputfile,则使用标准输出设备输出。此外,如果也省略 inputfile,则使用

标准输入设备输入。

用法:native2ascii [-reverse] [-encoding 编码] [输入文件 [输出文件]]

-[options]:表示命令开关,有两个选项可供选择

-reverse:

执行相反的 *** 作:将含 Latin-1 和/或 Unicode 编码字符的文件转换成含本地编码字符

的文件,不指定编码情况下,将转为本地编码。

-encoding encoding_name

指定转换过程使用的编码名称。缺省的编码从系统属性 file.encoding 中得到。

encoding_name 字符串必须是下表第一栏所示的字符串。

[inputfile [outputfile]]

inputfile:表示输入文件全名。

outputfile:输出文件名。如果缺少此参数,将输出到控制台

-------------------------------------------------------------

8859_1 ISO 8859-1

8859_2 ISO 8859-2

8859_3 ISO 8859-3

8859_4 ISO 8859-4

8859_5 ISO 8859-5

8859_6 ISO 8859-6

8859_7 ISO 8859-7

8859_8 ISO 8859-8

8859_9 ISO 8859-9

Big5 Big5 码,繁体中文

CNS11643 CNS 11643,繁体中文

Cp037 美国、加拿大(两种语言,法语)、荷兰、葡萄牙、巴西、澳大利亚

Cp1006 IBM AIX 巴基斯坦(乌尔都语)

Cp1025 IBM 多语种西里尔语:保加利亚、波斯尼亚 黑塞哥维那、马其顿 (FYR)

Cp1026 IBM Latin-5,土耳其

Cp1046 IBM Open Edition US EBCDIC

Cp1097 IBM 伊朗(波斯语)/波斯

Cp1098 IBM 伊朗(波斯语)/波斯 (PC)

Cp1112 IBM 拉脱维亚,立陶宛

Cp1122 IBM 爱沙尼亚

Cp1123 IBM 乌克兰

Cp1124 IBM AIX 乌克兰

Cp1125 IBM 乌克兰 (PC)

Cp1250 Windows 东欧

Cp1251 Windows 斯拉夫语

Cp1252 Windows Latin-1

Cp1253 Windows 希腊

Cp1254 Windows 土耳其

Cp1255 Windows 希伯莱

Cp1256 Windows 阿拉伯

Cp1257 Windows 波罗的语

Cp1258 Windows 越南语

Cp1381 IBM OS/2, DOS 中华人民共和国 (PRC)

Cp1383 IBM AIX 中华人民共和国 (PRC)

Cp273 IBM 奥地利、德国

Cp277 IBM 丹麦、挪威

Cp278 IBM 芬兰、瑞典

Cp280 IBM 意大利

Cp284 IBM 加泰罗尼亚语/西班牙、拉丁美洲西班牙语

Cp285 IBM 英国、爱尔兰

Cp297 IBM 法国

Cp33722 IBM-eucJP - 日语 (5050 的超集)

Cp420 IBM 阿拉伯

Cp424 IBM 希伯莱

Cp437 MS-DOS 美国、澳大利亚、新西兰、南非

Cp500 EBCDIC 500V1

Cp737 PC 希腊

Cp775 PC 波罗的语

Cp838 IBM 泰国扩展 SBCS

Cp850 MS-DOS Latin-1

Cp852 MS-DOS Latin-2

Cp855 IBM 斯拉夫语

Cp857 IBM 土耳其语

Cp860 MS-DOS 葡萄牙语

Cp861 MS-DOS 冰岛语

Cp862 PC 希伯莱

Cp863 MS-DOS 加拿大法语

Cp864 PC 阿拉伯语

Cp865 MS-DOS 日尔曼语

Cp866 MS-DOS 俄语

Cp868 MS-DOS 巴基斯坦语

Cp869 IBM 现代希腊语

Cp870 IBM 多语种 Latin-2

Cp871 IBM 冰岛语

Cp874 IBM 泰国语

Cp875 IBM 希腊语

Cp918 IBM 巴基斯坦(乌尔都语)

Cp921 IBM 拉脱维亚、立陶宛(AIX, DOS)

Cp922 IBM 爱沙尼亚 (AIX, DOS)

Cp930 与 4370 UDC 混合的日语,5026 的超集

Cp933 与 1880 UDC 混合的韩文,5029 的超集

Cp935 与 1880 UDC 混合的简体中文主机,5031 的超集

Cp937 与 6204 UDC 混合的繁体中文,5033 的超集

Cp939 与 4370 UDC 混合的日语拉丁字母,5035 的超集

Cp942 日语 (OS/2),932 的超集

Cp948 OS/2 中文(台湾),938 超集

Cp949 PC 韩文

Cp950 PC 中文(香港、台湾)

Cp964 AIX 中文(台湾)

Cp970 AIX 韩文

EUCJIS JIS, EUC 编码、日语

GB2312 GB2312, EUC 编码、简体中文

GBK GBK, 简体中文

ISO2022CN ISO 2022 CN, 中文

ISO2022CN_CNS ISO-2022-CN 形式的 CNS 11643,繁体中文

ISO2022CN_GB ISO-2022-CN 形式的 GB 2312,简体中文

ISO2022KR ISO 2022 KR, 韩文

JIS JIS, 日语

JIS0208 JIS 0208, 日语

KOI8_R KOI8-R, 俄语

KSC5601 KS C 5601, 韩文

MS874 Windows 泰国语

MacArabic Macintosh 阿拉伯语

MacCentralEurope Macintosh Latin-2

MacCroatian Macintosh 克罗地亚语

MacCyrillic Macintosh 斯拉夫语

MacDingbat Macintosh Dingbat

MacGreek Macintosh 希腊语

MacHebrew Macintosh 希伯莱语

MacIceland Macintosh 冰岛语

MacRoman Macintosh 罗马语

MacRomania Macintosh 罗马尼亚语

MacSymbol Macintosh 符号

MacThai Macintosh 泰国语

MacTurkish Macintosh 土耳其语

MacUkraine Macintosh 乌克兰语

SJIS Shift-JIS, 日语

UTF8 UTF-8


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11575335.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存