非越狱手机查看APP布局

应用场景

非越狱手机进行查看其他APP的布局。

系统环境

ios 10.3.3 Xcode 8.3.3

准备

需要安装集成插件来支持非越狱环境,推荐AloneMonkey集成插件,安装步骤详细请看插件wiki,同时有其他小插件可以体验下。

安装步骤

安装最新的theos(可以理解为越狱开发工具包)

sudo git clone --recursive https://github.com/theos/theos.git /opt/theos

指定的Xcode安装

sudo xcode-select -s /Applications/Xcode-beta.app

安装命令

git clone https://github.com/AloneMonkey/MonkeyDev.git
cd MonkeyDev/bin
sudo ./md-install

使用说明

新建Xcode项目如下:

3073942D-F550-4E10-9EF1-CAC73DEC21AD.png

需要准备一个已经越狱的APP的ipa,拖到项目中的TargetApp,编译即可。


593BE5A1-4F94-4876-8B87-F522165864AA.png

Xcode8需要通过Build Phases指定动态库。

9DBE568E-9D78-4FC0-BDE5-B88141FEC76F.png

Xcode运行, 打开Debug View Hierarchy就可以看到APP的布局,这样就可以很方便的查看其他APP的布局了。
以高德地图为例:

1420D62E-7EC6-47ED-84DF-5208BF25C040.png

可以清晰的看出高德地图首页的大致布局,同时也可以通过Chisel命令查看当前页面层级关系。

(lldb) pvc 查看当前控制器
<AMNavigationController 0x105854600>, state: appeared, view: <UILayoutContainerView 0x104854460>
   | <NMMapViewController 0x104b25420>, state: appeared, view: <AMCommonContentBackgroundView 0x104b052b0>
(lldb) 

完整项目Github

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容