- USB 端口映射
1 2 |
iproxy 2222 2 |
- xcode 随便创建一个APP 项目,在手机上运行一次。会在 ios 的
/Developer/usr/bin/
目录下生成debugserver
用于后面的调试。 - 把
debugserver
下载到本地进行瘦身和重签。重签是重点,主要是为了赋予权限可以调试所有进程。
a. 先拉下来12scp -P 2222 root@localhost:/Developer/usr/bin/debugserver ./b. 瘦身,选择当前测试机 iphone cpu 的指令集,这里是 iphone7 arm64。
12lipo debugserver -thin armv7 -output debugserver-armv7c. 重签。
ent.plist 文件内容1234567891011121314151617<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"><dict><key>com.apple.springboard.debugapplications</key><true/><key>get-task-allow</key><true/><key>task_for_pid-allow</key><true/><key>run-unsigned-code</key><true/><key>platform-application</key><true/></dict></plist>重签命令
12codesign -s - --entitlements ent.plist -f debugserver-arm64 - 拷回 ios
1 2 |
scp -P 2222 debugserver-arm64 root@localhost:~/ |
- ios 端开始调试某进程。
- 注意:这里不能用
*:2333
要指定 Hostlocalhost:2333
,否则会失败。
- 注意:这里不能用
1 2 |
debugserver-arm64 localhost:2333 -a "Calculator" |
- mac 端连接 debugserver 命令
1 2 3 |
lldb (lldb) process connect connect://localhost:2333 |
附加会需要等待一段时间,之后就可以正常调试了。