Abstract

Building a one hundred percent robust, error-prone Android application is a hard thing to sustain considering all the assumptions of the foreign environment differences that the developers of the mobile applications must consider. However, there are some known mechanisms that help the developers get a closer step toward making precautions and calculating the assumption of different errors and scenarios to achieve the application robustness, such as the exception handling mechanism- ‘EHM’. EHM is a mandatory step in Java development which indeed is the core of the Android application platform. In this research, we analyzed an Android representative sample of 24 applications that consists of 6 major categories, 4 applications for each. The static analysis was done to the under-test sample applications using a Java exception parser automation tool developed specifically for this research. Our study contributes directly to creating the Java exception parser tool to parse the total source code of the application so that it extracts the exception handling code blocks from it, then to automate its static analysis to indicate the types and classes percentages and types of exception handling mechanisms used in the targeted applications. The overall result that we can conclude is that in general, although error handling techniques was reported to be misused before, by being overly generic and simple handlers aimed to log or are left empty in most of the researchers results that we came across while doing this research, now the android developers of our representative sample at least are moving forward to write a more robust application that can be significant in the competitive new technological world and this is proven by the logic handlers exceptions percentage of 49% of the total LOC from all the 24 analyzed applications. As per our knowledge, this is the first research that aims to study how the programmers use the EHM inside android application development.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.