Return to search

Native-like Performance and User Experience with Progressive Web Apps

Users spend more time than ever on mobile devices like smartphones and tablets, while native app development continues to become harder due to platform fragmentation. The web is a promising platform for mobile applications because of its easy access and standardised technologies that work unanimously across many different platforms and operating systems. However, native applications have always had an edge over the web because of important features that have not been available anywhere else, such as push notifications, background synchronisation and offline support. Progressive Web Apps aim to bring the web platform closer to native by enabling many of these important features while still running completely in the web browser, with the possibility to install the application, effectively promoting it to a top-level application. This project will evaluate the capabilities of web-based mobile applications compared to traditional native mobile applications. Three simple proof of concept applications will be built to test the performance and user experience with the help of different JavaScript libraries and techniques for building a Progressive Web App. Then one of the implementations will be further developed and matched against an existing native application with similar features in terms of functionality and performance. The study finds that for this use case, a Progressive Web App may be used instead of a native app without missing out on any important functionality. This simplifies development and releases, by enabling rich code sharing between the different platforms as well as avoiding the app distribution platforms by distributing the application entirely through the web, automatic and transparent to the users. However, this solution means more responsibility in terms of infrastructure for developers to maintain and optimise as the application needs to be distributed by own servers. / Allt mer tid ägnas åt mobila enheter såsom smartphones och surfplattor, medan apputveckling blir allt svårare på grund av spridningen av plattformar. Webben är en lovande plattform för mobila applikationer på grund av dess lättillgänglighet och standardiserade teknologier som fungerar likadant på många olika plattformar och operativsystem. Trots detta har nativa appar alltid haft ett övertag gentemot webben på grund av funktioner som inte varit tillgängliga på andra platformar, såsom pushnotiser, bakgrundssynkronisering och offlinestöd. Progressive Web Apps syftar till föra webbplattformen närmare nativ genom att möjliggöra många av dessa funktioner men fortfarande köras enbart i webbläsaren, med möjlighet att installera applikationen på enheten. Projektet kommer att utvärdera kapaciteten i webbaserade mobila applikationer jämfört med traditionella mobilapplikationer. Tre stycken proof of concept-applikationer kommer att byggas för att testa prestanda och användarvänlighet med hjälp av olika JavaScript-bibliotek och tekniker för att bygga en Progressive Web App. Därefter kommer en av implementationerna att vidareutvecklas och utvärderas gentemot en existerade app med liknande funktionalitet. Studien visar att en Progressive Web App i det här användningsfallet kan ersätta en nativ mobilapplikation utan att gå miste om viktig funktionalitet. Det skulle förenkla utveckling och publicering, genom att möjliggöra koddelning mellan olika plattformar och undvika appdistribueringsplattformarna genom att distribuera applikationen enbart genom webben, automatiskt och transparent för användarna. Lösningen innebär dock mer ansvar i form av underhåll och optimering av infrastruktur eftersom applikationen måste distribueras genom egna servrar.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-235389
Date January 2018
CreatorsYberg, Viktor
PublisherKTH, Skolan för elektroteknik och datavetenskap (EECS)
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageEnglish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess
RelationTRITA-EECS-EX ; 2018:602

Page generated in 0.0019 seconds