Debugging with RevTwo

Bugs—developers hate them. Hands down, bugs are the most frustrating and challenging part of the app development process. Crashes suck, but at least then you can see where everything blew up and where the problem happened.

The worst kind of bug is the silent kind or the hairy tarantula as I like to call it–the one that sneaks in as a missing file or unsynced data and usually appears randomly.  Everything works perfectly on your phone and desktop, but as soon as the app is in TestFlight, all hell breaks loose. Our co-workers and customers try to describe what they were seeing on the app.  Frantically, we try to repeat the issue, plug into Xcode and reproduce the error—which usually doesn’t work.

I’ve been there—we had a complicated app that worked in online and offline modes with a rather smart syncing mechanism in between. It all worked great on my high speed Wi-Fi and with our small team during testing, but once it was in the hands of the customer, a bug surfaced.

Fixing it was a nightmare. Users couldn’t clearly explain to me what actually occurred or what caused it (there was no crash, just missing files and data that thought it was synced when it wasn’t), so replicating the problem was difficult. Not being able to see the issue made it seem impossible to make the pesky bug go away—I burned weeks trying to understand what exactly was happening behind the scenes.

A faster, better debugging experience

There is a better way and a faster path to building a successful app. RevTwo makes the debugging process less painful by giving developers tools to create a bug-free app and connecting them with users who need in-app support.

How do the tools work? Three simple steps (really!):

    1. The RevTwo API is integrated into an app in 10 minutes or less, giving users the ability to submit help request tickets describing the issue they’re experiencing.
    2. A developer can initiate a help session to view the user’s screen while talking to them on the phone to see how they’re using the app, and what buttons they’re pressing. Additionally, with RevTwo, developers get insight beyond the surface level, and can get details like:
      • Device system information to see if the user is running the latest iOS and what app version they’re using
      • Network settings such as Wi-Fi and Bluetooth
      • Memory usage and disk space to help pinpoint issues like memory leaks
      • App log details, in real time, just like in Xcode, as well as access to the log history without needing to reproduce the error
      • App file system access (not the whole phone, just the app—we are still bound by the sandbox) to view all the files the app has stored in its documents directory and any subdirectories within (with the capability to download and upload files directly to the app)
      • App SQLite database view, which allows developers to view the table structure and data that the app is operating on
    3. The result is a developer finding and fixing a bug in record time, resulting in a happier user.In the end, I did track down that big, hairy tarantula of a bug, but it cost us time, money and a fair bit of sanity. Debugging can be like wandering a maze in the dark; tools like those from RevTwo let you turn on the lights.

Try it out for yourself; sign up for our free troubleshooting tools to help during TestFlight