How to attach debugger to iOS app after launch?
IosXcodeDebuggingIos Problem Overview
I have an issue I am troubleshooting which occurs very infrequently and doesn't seem to happen when I have things running under Xcode.
Is it possible to run an app normally (i.e. from Springboard) until my issue occurs, and then attach a debugger at that point?
I would prefer to do this without jailbreaking if possible.
Ios Solutions
Solution 1 - Ios
- Attach your device connected your Mac
- Debug > Attach to Process by PID or Name
- In the dialog sheet, enter the name of your App as it appears in the
Debug navigator
when started via Xcode (e.g. Target's name not bundle-id).
If the app is already running, the debugger will attach to the running process. If it isn't running, it will wait for the app to launch and then attach.
Solution 2 - Ios
I'll leave this here since neither of the other 2 answers gave me quite enough detail without a little bit of a struggle.
-
Run your app in the simulator and take note of the name in the Debug navigator
-
Plug in your device and don't forget to select your device as the target
-
Debug > Attach to Process > By Process Identifier (PID) or Name
-
Enter the name from step 1 and attach. That should be all you have to do.
Solution 3 - Ios
In Xcode 5.0.1 and 6 it's the menu bar items:
Debug > Attach to Process > By Process Identifier (PID) or Name...
Solution 4 - Ios
In Xcode 7 it's just:
Debug > Attach to Process by PID or Name...