[02-10更新离线DEB]装B神器:教你修改QQ手机型号为iPhone6Plus
本帖最后由 tree_fly 于 2015-2-10 17:45 编辑先来看下效果。
修改QQ手机类型为iPhone6 Plus基础设备:
1.一台苹果电脑 or 虚拟机(OS X Yosemite) 2.越狱手机一台(如iPhone5 iOS8.1.1) 3.其他请参考老飘帖子:iOS逆向工程学习之路(工具+设备推荐): https://www.chinapyg.com/thread-74331-1-1.html
入门步骤: 1.安装VM虚拟系统 OS X Yosemite。
2.安装XCode。
3.安装越狱开发系统theos、iOSOpenDev。 参考:theos https://github.com/DHowett/theos http://iphonedevwiki.net/index.php/Theos/Setup iOSOpenDev http://www.iosopendev.com/ 老飘文档iOSOpenDev正确配置 http://www.dllhook.com/post/7.html
4.配置越狱后的手机,需要Cydia安装的(个别非必须)插件: Core Utilities Core Utilities(/bin) diskdev-cmds file-cmds system-cmds Mobileterminal openSSH sshpass toggle ssh preferencdloader substrate safe mode syslogd to /var/log/syslog
5. 测试SSH连接。
6.处理编译程序到真机可能出现的问题。 a) 参考官网: SSH Public Key Authentication https://github.com/kokoabim/iOSOpenDev/wiki/SSH-Public-Key-Authentication b) 参考老飘中文解析: iOSOpenDev越狱开发直接编译安装到真机+错误解决方案 https://www.chinapyg.com/thread-74561-1-1.html
实践步骤:1.启动XCode,新建Project : Logos Tweak,命名为:ChangeIPhone6Plus。
新建的项目文档结构图:
2.修改项目Scheme:iOS Device。
3.添加项目必须的头文件及链接库文件。 a) Libsubstrate.dylib 默认安装路径:/opt/iOSOpenDev/lib/ b) Substrate.h 默认路径:/opt/iOSOpenDev/include/ Substrate.h 头文件副本来自:Cydia Substrate。请复制越狱手机/Library/Frameworks/CydiaSubstrate.framework/Headers/CydiaSubstrate.h 到MAC中/opt/iOSOpenDev/include/,并重命名为 substrate.h。
4.写hook代码:
/*
* 修改iPhone QQ手机类型为iPhone6 Plus
* 作者:tree_fly/P.Y.G, Thanks to creantan/P.Y.G
*/
#include "substrate.h"
int (*orig_sysctlbyname)(const char *name, void *oldp, size_t *oldlenp, void *newp, size_t newlen);
int my_sysctlbyname(const char *name, void *oldp, size_t *oldlenp, void *newp, size_t newlen){
if (strcmp(name, "hw.machine") == 0) {
int ret = orig_sysctlbyname(name, oldp, oldlenp, newp, newlen);
if (oldp != NULL) {
NSLog(@"+++\n+++\n+++\n+++\n+++:before %s +++\n+++\n+++\n++++",(char*)oldp);
const char *mechine1 = "iPhone7,1";
strncpy((char*)oldp, mechine1, strlen(mechine1));
NSLog(@"+++\n+++\n+++\n+++\n+++:after%s +++\n+++\n+++\n++++",(char*)oldp);
}
return ret;
}else{
return orig_sysctlbyname(name, oldp, oldlenp, newp, newlen);
}
}
%ctor {
MSHookFunction((void *)MSFindSymbol(NULL,"_sysctlbyname"), (void *)my_sysctlbyname, (void **)&orig_sysctlbyname);
}
5.查找QQ软件的Info.plist文件, 并查看其Bundle identifier Windows:
Mac OS:
6.修改项目的Bundle identifier:
7.编译项目(Product/Build for/Profiling)
8.启动日志查看工具,如iTools的实时日志工具。
9.手机端测试,记得点击日志下面的手机型号后,再次选择,否则不显示哦。
10.教程就到这里,祝你好运哦,2015新年新气象。最后,感谢creantan, 飘云悉心指导。
参考【教程2】接着玩--给NoShutterSound 添加插件配置开关 https://www.chinapyg.com/thread-74518-1-1.html设计插件的配置开关:
支持下。。教程图文并茂很详细{:soso_e179:}{:soso_e179:}
感谢楼主分享! 搞个软件出来就帅呆了 {:soso_e113:}吊炸天,感谢。 能把安卓变成爱疯更牛,期待大牛实现啊,呵呵 qinccckencn 发表于 2015-1-4 19:18
能把安卓变成爱疯更牛,期待大牛实现啊,呵呵
早就有了哦。。自行Google
好复杂啊,只能路过看看了 支持了,这个就不用了,呵呵 谢谢了。
好复杂…………
还是不装B了吧