安卓逆向系列教程 4.1 字符串资源

简介: 安卓逆向系列教程 4.1 字符串资源 作者:飞龙这篇教程是 APK 逆向实战的第一个例子,我会以一个非常简单的程序开始。

安卓逆向系列教程 4.1 字符串资源

作者:飞龙

这篇教程是 APK 逆向实战的第一个例子,我会以一个非常简单的程序开始。主要内容就是修改字符串资源,除了破解所需之外,汉化也需要了解这个东西。我们的程序是这个样子。

可以告诉大家的是,这三个文本的位置都不一样。

下面我们将其载入 Android Killer。完成后,在文本搜索框中搜索文本 1

这样是不会有任何效果的,我们就猜测这个字符串应该是写入代码中的,而反编译出来的代码中的字符串以\uxxxx编码。所以我们要搜索\u6587\u672c 1。可以看到它的确存在于代码中。

下面我们要寻找文本 2,我们首先看一看这个函数,这是MainActivityonCreate。这里没有其它的字符串了,说明一定在别处。

我们搜索\u6587\u672c 2,也是无效果的。那么我们搜索文本 2

<TextView android:textAppearance="?android:textAppearanceMedium" android:id="@id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="2.0dip" android:text="      " />
<TextView android:textAppearance="?android:textAppearanceMedium" android:id="@id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="2.0dip" android:text="文本 2" />
<TextView android:textAppearance="?android:textAppearanceMedium" android:id="@id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="2.0dip" android:text="@string/text3_text" />

我们在activity_main里面找到了这个东西,它是MainActivity的布局文件,布局文件中的字符串是不编码的。所以以后我们就需要两种情况都试一试。

我们查看第三个TextView,它的 ID 是@id/textView3,那么肯定就是我们要找的第三个文本框。我们可以看到它的text属性是@string/text3_text,说明它可能在strings.xml里面。

我们直接访问strings.xml,我们可以看到文本 3在这里:

虽然 Android 不提倡硬编码在代码或者布局文件里面,但总有些人是这样做的,我们就需要了解。

相关文章
|
9月前
|
网络协议 Android开发 数据安全/隐私保护
Android手机上使用Socks5全局代理-教程+软件
Android手机上使用Socks5全局代理-教程+软件
5804 2
|
9月前
|
缓存 网络协议 安全
49. 【Android教程】HTTP 使用详解
49. 【Android教程】HTTP 使用详解
150 1
|
7月前
|
Android开发
Android Stadio Build 窗口字符串乱码问题
在使用Android Studio过程中,如果遇到Build窗口字符串乱码问题,可以通过编辑`studio.vmoptions`文件添加`-Dfile.encoding=UTF-8`配置并重启Android Studio来解决。
220 1
Android Stadio Build 窗口字符串乱码问题
|
4月前
|
Android开发 数据安全/隐私保护 虚拟化
安卓手机远程连接登录Windows服务器教程
安卓手机远程连接登录Windows服务器教程
667 4
|
4月前
|
Android开发
布谷语音软件开发:android端语音软件搭建开发教程
语音软件搭建android端语音软件开发教程!
|
9月前
|
XML 存储 JSON
51. 【Android教程】JSON 数据解析
51. 【Android教程】JSON 数据解析
199 2
|
9月前
|
存储 API 文件存储
47. 【Android教程】SharedPreferences 存储
47. 【Android教程】SharedPreferences 存储
94 2
|
7月前
|
监控 Java 开发工具
### 绝招揭秘!Android平台GB28181设备接入端如何实现资源占用和性能消耗的极限瘦身?
【8月更文挑战第14天】本文介绍在Android平台优化GB28181标准下设备接入的性能方法,涵盖环境搭建、SDK集成与初始化。重点讲解内存管理技巧如软引用、按需加载资源,以及通过硬件加速解码视频数据和图像缩放来减轻CPU与GPU负担。同时采用线程池异步处理视频流,确保UI流畅性。这些策略有助于提高应用效率和用户体验。
87 0
|
9月前
|
存储 编解码 Android开发
58. 【Android教程】音频录制:MediaRecord
58. 【Android教程】音频录制:MediaRecord
94 2
|
9月前
|
Web App开发 移动开发 前端开发
52. 【Android教程】网页视图:WebView
52. 【Android教程】网页视图:WebView
136 1

热门文章

最新文章