How to detect bugs in WatchOS apps
Updated: Sep 24, 2022
Fixing bugs in any app is critical as it can affect the user experience. Therefore, finding and fixing bugs at the earliest remains a top priority for any developer. Finotes has released its framework for watchOS, that is capable of automatically identifying and reporting unanticipated issues in live apps.
With a 3 step integration process, the framework is able to detect and report issues in WatchOS apps. This helps developers to reproduce issues and find the root cause. For integration details, visit documentation for watchOS (objective-C and swift).
Following are the steps to integrate WatchOS app with Finotes.
Register with Finotes using the ‘Get Started’ button in https://finotes.com and login to the dashboard.
Use “Add App” to link WatchOS app to Finotes using bundle identifier.
Integrate Finotes Framework to your app via cocoapods.
Finotes is capable of reporting multiple types of issues in WatchOS apps. Some of the main types of issues are mentioned below.
NSException based crashes
App crashes are fatal. They affect the user experience and may result in users uninstalling the app. With basic integration, Finotes watchOS framework is capable of detecting and reporting NSException based crashes.
Crash reports generated by Finotes dashboard have data points like stack trace, device & device state data along with the time of occurrence of the issue.
By adding a single line of code, Finotes watchOS framework is capable of reporting API issues like status code errors, delayed API call executions, duplicate API calls.
API related bug reports have data points like full URL with parameters, request, request body, response headers which will aid in faster root cause analysis.
High memory usages
In case the app uses an abnormal amount of memory, Finotes watchOS framework immediately reports it.
The bug reports will have an activity trail along with memory usage patterns, device and device state information which will aid developers to identify the issue.
Finotes watchOS framework provides an API to track code level function failures. Once a code level function is tracked, issues like unexpected return value, delay in function execution are automatically reported.
Each bug report will contain data points like function parameters, stack traces, activity trail, and return values.
With function tracking API, developers will be able to chain multiple code level functions. Once chained, Finotes will check whether the second function is executed within the stipulated time (which can be set by the developer) after the first function execution. If the second function is not executed, then Finotes watchOS framework reports it as a failure scenario.
Data points like function parameters, stack traces, activity trail, device and device state data are captured.
Finotes watchOS framework provides a single line API for developers to report anticipated issues.
Data Security & Data Privacy
We consider privacy with the utmost importance. Finotes watchOS framework is architected to ensure that the app user remains anonymous. Finotes also ensures security and transparency by offering end to end encryption. It is GDPR compliant and no PII is captured.
Call back mechanism
Finotes watchOS framework offers a callback mechanism for every issue raised. This call back mechanism can be used by the developer to gracefully handle the issue.
Finotes is available as Objective-C and Swift Framework for iOS and as Java SDK and Kotlin SDK for Android.