导入第三方脚本或自定义脚本
@import com.codermjlee.mjcript
@import mjcript

<key>mj</key>
<dict>
<key>LoadAtLaunch</key>
<true/>
<key>priority</key>
<string>4</string>
<key>url</key>
<string>https://raw.githubusercontent.com/CoderMJLee/mjcript/master/mjcript.cy</string>
</dict>
ps -A | grep keyword
cycript # 进入cycript交互界面command+D退出
cycript -p [port或者name]
用法 | 用途 |
APPID | NSBundle.mainBundle.bundleIdentifier |
APPPATH | mainBundle.bundlePath |
APPHOME | NSHomeDirectory() |
APPDOC | NSSearchPath |
APPLIBRARY | NSSearchPath |
APPCACHE | NSSearchPath |
pviews | 打印视图层级 |
pvcs | 打印控制器层级 |
rp(adr) | 响应链 |
pactions(target) | actions对像和方法 |
UIApp | [UIApplication sharedApplication] |
choose(UIButton) | 获取当前在内存中的所有的类实例 |
MJAppId | app id |
MJAppPath | mainBundlePath |
MJDocPath | document path |
MJCachesPath | caches path |
MJLoadFramework("name") | 加载系统动态库 |
MJKeyWin() | keyWindow |
MJRootVc() | 根控制器 |
MJFrontVc() | 显示在最前面的控制器 |
MJVcSubviews(vc) | 递归打印UIViewController view的层级结构 |
MJFrontVcSubViews | 递归打印最上层UIViewController view的层级结构 |
MJBtnTouchUpEvent(btn) | 获取按钮绑定的所有TouchUpInside事件的方法名 |
MJPointMake | CG函数 |
MJSizeMake | CG函数 |
MJRectMake | CG函数 |
MJChildVcs(vc) | 递归打印controller的层级结构 |
MJSubviews(view) | 递归打印view的层级结构 |
MJIsString(str) | 判断是否为字符串 "str" @"str" |
MJIsArray(arr) | 判断是否为数组 []、@[] |
MJIsNumber(num) | 判断是否为数字 666 @666 |
MJSubclasses(clsname, reg) | 打印所有的子类 |
MJInstanceMethods(clsname, reg) | 打印所有的对象方法 |
MJInstanceMethodNames(clsname, reg) | 打印所有的对象方法名字 |
MJClassMethods(clsname, reg) | 打印所有的类方法 |
MJClassMethodNames(clsname, reg) | 打印所有的类方法名字 |
MJIvars(obj, reg)/*obj | 打印所有的成员变量 |
MJIvarNames(obj, reg) | 打印所有的成员变量名字 |