标签:cti col 项目 loader 连接 AC 准备 导入 location
最近在看iOS逆向的资料,发现了调试UI的工具--Reveal,发现这在实际开发中也是很有用处。当我们需要参照其他App界面布局的时候,使用这个工具可以看他的布局情况。不过这需要手机越狱才行。如果没有越狱的话,只能调试自己的App,有同学会说,如果是自己的App,那我用自带就够了,其实Reveal有个比Xcode自带的更有用的功能。Reveal提供一个可以即时改布局属性的功能,即我不需要修改代码,再重启App来查看。只需要在右边约束直接修改数值,回车一下,就能看到相关的布局了,类似于前端通过浏览器修改界面,个人觉得非常的方便。
https://blog.csdn.net/Crazy_SunShine/article/details/78843023 这位博主大大提供了破解版。里边也有其他几种方式使用Reveal,这里就记录使用过的最简单的方式。
RevealServer.framework在Reveal应用的Help-->Show Reveal Library in Finder-->iOS Library中获取。取到后,拖进项目的根目录。然后在TARGETS中添加RevealServer.framework。
到这一步后,运行项目,打开Reveal,即可看到对应的项目。
随便选择一个即可看到对应的层级结构。到这一步就能调试自己的App了。
这一步需要越狱的手机,越狱的方法很多,PP助手、爱思助手都可以。越狱后在Cydia中安装三个重要的插件:Cydia Substrate、OpenSSH、Reveal Loader。
安装好对应的插件后,开始准备工作:
scp /Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/RevealServer.framework/RevealServer root@192.168.2.6:/Library/MobileSubstrate/DynamicLibraries/libReveal.dylib
需要输入的默认密码是:apline
这里我因为试了一下 OpenSSH 能不能成功连上手机。使用了。"ssh root@192.168.2.6"。输入密码apline后,成功连接了iPhone的机子,再使用上面命令一直说找不到文件目录,是因为当前设备主体不对。小小注意一下。另外类似的代码将libReveal.plist也移入到设备中:
scp xxx/libReveal.plist root@192.168.2.6:/Library/MobileSubstrate/DynamicLibraries/libReveal.plist
plist的内容是你要调试的App的bundle id。如下图:
这里再贴上一份。获取手机所有应用的bundle id的代码。
NSMutableArray *allID = [[NSMutableArray alloc] init]; Class LSApplicationWorkspace_class = objc_getClass("LSApplicationWorkspace"); NSObject* workspace = [LSApplicationWorkspace_class performSelector:@selector(defaultWorkspace)]; NSArray *appArray = [workspace performSelector:@selector(allApplications)]; NSString *model = [UIDevice currentDevice].model; for (NSString *str in appArray) { //转换成字符串类型 NSString *string = [str description]; NSRange rg1 = [string rangeOfString:@">"]; string = [string substringFromIndex:rg1.location + 2]; if ([model isEqualToString:@"iPad"]) { NSRange rg2 = [string rangeOfString:@"<"]; string = [string substringToIndex:rg2.location - 1]; } NSDictionary *dic = @{@"bundleID":string}; [allID addObject:dic]; } NSLog(@"allID-----%@",allID);
2. 在iOS设备上设置中 Reveal 的Enabled Applications指定要查看的App。
到这里就完成了。
接下来打开你要查看的App,再打开Reveal。即可看到对应界面。
标签:cti col 项目 loader 连接 AC 准备 导入 location
原文地址:https://www.cnblogs.com/guanshenbao/p/9253870.html