美文网首页
越狱开发(三) —— Cycript

越狱开发(三) —— Cycript

作者: e297b14c9e53 | 来源:发表于2020-03-08 18:30 被阅读0次

Cycript

  • Cycript是Objective-C++、ES6(JavaScript)、Java等语法的混合物
  • 可以用来探索、修改、调试正在运行的Mac\iOS APP
  • 官网: http://www.cycript.org/
  • 文档: http://www.cycript.org/manual/
  • 通过Cydia安装Cycript,即可在iPhone上调试运行中的APP

Cycript开启和关闭

  • 开启: cycriptcycript -p 进程IDcycript -p 进程名称
  • 取消输入: Ctrl + C
  • 退出:Ctrl + D
  • 清屏:Command + R

ps 命令

  • iPhone 安装adv-cmds
  • ps命令是process status的缩写,使用ps命令可以列出系统当前的进程
  • 列出所有的进程
    • ps –A
    • ps aux
  • 搜索关键词
    • ps –A | grep 关键词

Cycript常用语法

  • UIApp[UIApplication sharedApplication]
  • 定义变量: var 变量名 = 变量值
  • 用内存地址获取对象: #内存地址
  • 已加载的所有OC类: ObjectiveC.classes
  • 查看对象的所有成员变量: *对象
  • 递归打印view的所有子控件(跟LLDB一样的函数)view.recursiveDescription().toString()
  • 筛选出某种类型的对象:choose(UIViewController)choose(UITableViewCell)

封装Cycript - .cy文件编写

  • 我们可以将常用的Cycript代码封装在一个.cy文件中
  • exports参数名固定,用于向外提供接口 image.png

封装Cycript - 存放和使用.cy文件

  • 将.cy文件存放到/usr/lib/cycript0.9目录下
  • 在Cycript中引用.cy文件,并使用它提供的接口


    image.png
  • https://github.com/wilddogqi/ffcript
  • 具体用法参考ffcript.cy文件

相关文章

网友评论

      本文标题:越狱开发(三) —— Cycript

      本文链接:https://www.haomeiwen.com/subject/egaddhtx.html