使用Organismo-iOS-Driver获得激动人心的探索应用程序
2.通过旁路将框架注入到现有的“ ipa / app”中 。
绕过是一种很酷的OS X命令行工具,可将Organismo-iOS-Driver注入您可以推迟的任何.IPA或.APP中。 您不需要APP的源代码。 您只需要拥有开发者证书和移动设备。
3.在越狱设备中使用MobileSubstrate。
在越狱的世界中搜索Mobile Substrate来找乐子。
交付用于3D表示的UI
收集UI树的信息非常简单。 它包括迭代每个窗口及其子视图,并获取每个UIView的信息。
//迭代应用程序的窗口
for([UIApplication sharedApplication] .windows中的UIWindow *窗口)... //迭代Windows子视图
对于(UIView * window.subviews中的subView)...
检查ORGUIViewHierarchy.m中的代码。
树信息和屏幕截图可以得到与WDA相同的结果,即屏幕截图和UI树并排表示。 见下图:
但是我们现在可以在App中进行其他操作。 我们可以将UI探索带入一个真正引人注目的地方。 如果每个UI元素都将提供其渲染的图像,我们可以隔离每个元素,并且不仅在它们的X,Y平面而且还沿着Z轴渲染它们 。
好吧,这是一个很酷的主意,事实证明这也是可能的。 这是我们的第一个幸运步骤:UIView具有将自身绘制到图形上下文上并从中创建PNG或JPEG的功能。
-(BOOL)drawViewHierarchy:(CGRect)rect afterScreenUpdates:(BOOL)after
我们还没有到, drawViewHierarchy绘制视图及其所有子视图,这不是我们想要的,我们需要没有子视图的图像。 接下来的三个步骤描述了实现此目标的一种方法:
- 隐藏所有子视图。
对于(UIView * subview在hiddenViews中){
[subview setHidden:YES];
[view setNeedsDisplay];
}
2.使用drawViewHierarchy将视图绘制到图形文本上。
3.恢复子视图的可见性。
这个把戏行之有效。 参见下面的图片。 我们掌握了每个UI元素及其可视表示形式的信息,现在我们可以进行惊人的3D UI探索。 检查ORGScreenshot.m以查看创建UIVIew图像的代码。
UI树的详细程度
尽管我已经提到收集UITree信息很简单,但事实并非如此。 使用UIKit API运行UI树可为我们提供最大程度的详细信息,这可能会过多。 让我们看看Organismo可以选择的一些细节程度的案例。
- 私人和公共班级
除了您熟悉的UIKit类(例如UIView,UIButton)外,还有数百种API中不可用或未记录的类,这些是UIKit用于构建UI的Apple私有类。 这些私有类通常以下划线作为前缀。 在Organismo中,您可以选择是否要查看它们。
- 可见和隐藏元素
有时可以出于多种原因隐藏UIView。 例如,某个应用程序可以在特定屏幕上具有隐藏视图,以在条件出现后将其变为可见。 这些隐藏的视图没有视觉上的表现,但是您可能希望在树中看到它们的显示,以进行很好的探索。
- 控制子视图
UI控件的组成可能非常复杂,例如,日期选择器具有非常复杂的内部结构,通常可能不希望看到它的完整细节。 但是有时您可能会选择,因此您可以选择自己的喜好来查看控件的内部。
- 手势和塞格斯
在特定屏幕的数百个UI元素中,只有少数几个具有用户交互响应并启动某些操作。 如果您只想研究响应式元素,则可以打开可视化标记。
- 飞机距离和范围
UI元素之间的访问和查看通常是必需的,并且可以使用两个滑块来更改平面之间的Z距离和平面范围,以实现这些目的。 请参见下面的图像层距离控制。
谢谢 !
如果喜欢,可以给Organismo-iOS-Driver Github存储库和本文加注星标。 🙂
- closurespopup窗口,当弹窗仍然可见时,达到
- 重用UIWebView导致崩溃
- 从Firebase控制台发送无声推送通知
- launchOptions’UIApplicationLaunchOptionsLocalNotificationKey’是否包含NSDictionary或UILocalNotification
- 在xCode 6中find一个意想不到的Mach-O头文件代码:1918975009
- 如何检查核心数据中是否存在对象
- Xamarin绑定类别返回错误:无法在静态类中声明实例成员
- iOS 7.1 UIModalPresentationCustom警告消息
- 使用NSMutabaleDictionary与RKClient包含图像并在Php服务器上接收