【发布时间】:2016-08-07 22:00:48
【问题描述】:
抱歉,标题令人困惑。我正在开发 iOS Tweak(用于越狱) 我想要完成的是我以前从未见过人们做过的事情,但我相信这是可能的!
例如,假设我正在尝试更改我的用户名。
在应用程序版本 1.0 中的 User.h 中有一个方法称为 - (void)setChangeUsername:(id)arg1;
允许在应用内更改用户名,现在在应用版本 1.2 上 该方法变得无用/不存在。 我怎样才能重新激活此方法以允许更改用户名?
我是否必须编辑应用程序二进制文件,或导入一些旧标头,甚至不确定此过程的第一步是什么,或者是否可能。
抱歉这个模糊的例子,但我希望它有足够的信息来得到我需要回答的问题!
如果您想了解更多信息,我很乐意写更多和更详细的信息:)
谢谢!
【问题讨论】:
-
你到底想做什么?您是否尝试恢复以前版本的应用程序中可用的特性/功能?
-
这正是我想要做的
-
如果该函数仍然存在于二进制文件中,您只需要挂钩一些其他函数并从那里调用
setChangeUsername。如果符号被剥离,找到该函数可能会很困难,并且可能需要在运行时memmem'ing __TEXT.__text 才能找到它。如果函数根本不存在,您必须自己编写代码,这将要求您找到存储指向用户名的指针的内存位置(假设它被编译为全局变量)或挂钩一个将该指针作为参数的函数(如果变量是本地的)。
标签: ios objective-c jailbreak tweak