Analysing the work required in creating and maintaining a mobile application - Riikonen, Joakim (My University, 2023)
When providing a service on the web, there is an ever increasing need for offering a mobile application as one method of usage. Developing a mobile application is expensive, however, as platform specific technologies are required when creating fully native applications, resulting in the need to build and maintain multiple separate code bases for effectively the same application. To solve this issue, different technologies have been created that allow for multiple platforms to be targeted without having to create a separate code base for each one. Cross-platform frameworks allow for a single code base to target multiple mobile platforms, while native runtimes and progressive web application methodologies allow for web technologies to be used in the creation of a mobile application. The goal of this thesis is to evaluate these technologies in terms of work required in creating an application and the quality of the application produced. First, the benefits and drawbacks of each technology are analysed, after which two prototypes, based on the same web application, are built with the most fitting technologies. The prototypes are then compared against each other to see the differences between the technologies in practice. For the case study performed in this thesis, the most promising technologies were cross-platform frameworks and native runtimes. The cross-platform framework React Native and the native runtime Capacitor were chosen to be used in the construction of the prototypes. The results gained from comparing the two frameworks showed that the prototype built with Capacitor was of higher quality than the one built with React Native, while also requiring less development time for its creation.
Keywords: Mobile application, React Native, Capacitor, Web application