Intermediate iOS Debugging
Apr 10 2018 · Video Course (1 hr, 13 mins) · Intermediate
Prepare to learn some new debugging tricks! In this course, you'll improve your skills with LLDB and Xcode.
Version
- Swift 4, iOS 11, Xcode 9


Improved Breakpoints and Logging
This introductory video will preview the course and introduce the debugging framework that will be used throughout.
Create exception breakpoints to make finding the cause of an unhandled exception easier. See how to share breakpoints between projects or multiple users of a project.
Use breakpoints to add new logging without having to stop, add code, and recompile.
Breaking in UIKit
5:31Learn how to use symbolic breakpoints to understand what's going on in UIKit code. Add conditions to fine tune your breakpoints.
Challenge: Logging
2:22Put your new-found skills to the test, logging what's going on in framework code.
LLDB
Introduction
1:23In this video, see what's coming up in the section and start learning about scope in LLDB.
Inspecting Variables
5:09Learn about the three ways to inspect data in your app and the danger that comes with the power.
Creating Variables
3:16Create new variables in LLDB and use them to make your debugging life easier.
Use LLDB variables between multiple breakpoints to make them more powerful.
Learn a new trick to view register values and use that to view the return value of a method.
Breaking LLDB
2:25Use a flag to allow a method called from the LLDB command line to stop at breakpoints in that method.
Conclusion
1:04Review what you've learned in this section and see what's coming up in Section 3.
Xcode
Application Language
4:49Use the scheme to make testing and switching between languages much easier and faster.
Main Thread Checker
2:39Learn how to quickly spot issues where UIKit code is being called from a background thread.
Malloc Stack Logging
4:06See how this tool helps pinpoint memory issues - taking you right to the line of code where a retained object was instantiated.
In this challenge, use unsafeBitCast to view properties of objects in the debug memory graph. As a bonus, learn how to create command aliases.
Wireless Debugging
1:56Learn how easy it is to debug without having to tether your device to your Mac.
Conclusion
1:11Congratulations on completing Intermediate Debugging! Review what you've learned in this course and see where to go next.
Comments