IosBX's Blog

IosbX's Blog
记录自己的每一次进步
  1. 首页
  2. iOS
  3. 正文

iOS逆向- iGameGod修改器实现汉化

2025年 11月 20日 603点热度 3人点赞 0条评论

官网:https://iosgods.com

插件下载地址:https://iosgods.com/igg

涉及:

  • Hook Objective-C类

  • UILabel

 

一.分析

在 iOS 平台中,应用界面(View Hierarchy)中绝大多数用于展示的静态或动态纯文本内容,均由 UIKit 框架提供的 UILabel(或基于 UILabel 的自定义子类)负责实例化、布局管理与最终的文本渲染。

这是 UILabel 的.h声明文件,在源码中#import <UIKit/UIKitt.h>即可使用。

使用示例如下, initWithFrame 初始化 UILabel 的实例,设置 text 文本内容,设置 textColor 文字颜色,设置 font 字体大小,设置 textAlignment 文字水平对其方式,设置 backgroundColor 背景颜色,最后添加到 view 中显示。

从代码示例中可以看到 text 属性设置了文本内容,从声明文件中可以看到 text 属性是@property(nullable, nonatomic,copy)其中 copy 修饰符会让编译器生成 setter 方法,也就是- (void)setText:(NSString *)text,传入的参数名不一定得是 text 。编译器只处理方法名是 setText: 和 参数类型 是 NSString *,参数的名字随便是个正常的变量名字都行。

确定目标 Hook UILabel 类的 setText 方法。

二.修改

创建一个 Theos 的 Tweak 项目。

用 if 判断一下 text 参数的内容,修改对应的文本,再使用  %orig 调用原始方法就可以实现修改文本内容,实现汉化。

三.后记

市面上绝大多数的类似修改弹窗文字,修改引流文字,都是 hook 了 UIlabel 类的 text 方法,再怎么把文本静态加密,最后的明文都会调用 setText 设置文字,要防止被修改,可以 hook 方法交换的函数。

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:2025年 11月 25日

IosBX

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

COPYRIGHT © 2026 IosBX's Blog. ALL RIGHTS RESERVED.