Once you’re done writing and publishing your app your job is not over. You tested extensively before launch (you did right?), but there are always situations and paths that you’d never imagine someone would perform until you release it into the wild. That’s where a service IBM’s MobileFirst Quality Assurance (MQA) comes along. MQA helps you capture, detect, and respond to user feedback and bug reports in a much more efficient fashion. MQA runs in the Bluemix cloud so there are no servers to deploy or software to install. You simply go to Bluemix.net and add a MQA service (making sure its unbound to any app). Then you go into the MQA dashboard and add an entry for your mobile app (or for each of your mobile apps) specifying whether it is an iOS or Android app. Then click on the button to get the API key for that app. Save it in a text file, we will need it later.
Now we have to configure our app to support MQA. There is very little code to add, most of the steps are configuration of your Xcode frameworks. I won’t go through it in details since it is detailed on this page. The page is missing some critical information however, in particular 2 frameworks that you will need otherwise the project will not build. In the section labeled “Installing iOS libraries” you need to add the following frameworks:
The documentation mentions “CorePlayer.framework” but this does not exist. You can safely ignore it. Now follow the rest of the instructions to add -ObjC to the linker flags and a bridging header file (this is required because the MQA libraries are in Objective-C and your project is in Swift). Once you’ve configured that 2 lines are code in your AppDelegate.swift file are all that is required to enable your app.
MQALogger.settings().mode = MQAMode.QA or MQAMode.Market (depending on if this is a test or release build) MQALogger.startNewSessionWithApplicationKey("your-application_key") where application key is the long string you saved earlier
The first time you start your app you will get a tutorial on how to report bugs or provide feedback. Subsequently your users can simply shake the phone and they will see the following screen:
They can choose to report a bug or provide feedback for future enhancement. Screenshots and even screen recordings can be provided to help them explain the bug.
Also if your app crashes unexpectedly, MQA will also record the occurrence in the reporting dashboard. As a product manager all you have to do is login to the MQA service in Bluemix and browse through the reports/statistics each day to see how your app is doing. You can even hook up MQA to monitor app store reviews so as to gauge customer sentiment.
With just 2 lines of code, MQA lets you add robust reporting, capture, and monitoring to your app, letting you deliver better quality code that delight your customers.