Chapter 11. Tools

Now that we have reviewed most of the important aspects of implementing efficient and performant apps, in this chapter we explore a few tools to help analyze and debug various issues.

In the previous chapter, we learned that the validity and isolated functional performance of the app can be tested using code. However, specialized tools are required to analyze certain tasks. Some of these tasks include:

  • Identifying and verifying accessibility tags

  • Analyzing runtime execution performance of the app in terms of resource utilization

  • Analyzing network and Core Data usage

  • Analyzing rendering performance

  • Performing user interactions through automated code

  • Analyzing crash logs

There are many tools available, but we will focus on the following ones in this chapter:

  • Apple’s Accessibility Inspector

  • Apple’s Xcode Instruments

  • Square’s PonyDebugger

  • XK72’s Charles

Let’s start with Accessibility Inspectors.

Accessibility Inspector

To reach a larger audience and to win accolades, you should make your app accessible. In addition, you might be legally required to make your app accessible. For example, in the United States, Section 508 may require your entire app (or certain parts of it) to be accessible. In other cases, the target audience may dictate the requirements (e.g., a travel or medical app should be accessible).

Each UIView (or its subclass) object can be provided an accessibilityLabel and accessibilityHint, apart from several other attributes. ...

Get High Performance iOS Apps now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.