Taustatilassa tapahtuva paikannus React Native Expo -sovelluksessa
Rontti, Eeva (2025)
Rontti, Eeva
2025
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2025112529742
https://urn.fi/URN:NBN:fi:amk-2025112529742
Tiivistelmä
Opinnäytetyön tavoitteena oli toteuttaa React Native Expo -mobiilisovellus, jossa taustatilassa tapahtuva paikannus toimii. Toisena tavoitteena oli selvittää, onko mahdollista estää laitevalmistajien asettamien Android-käyttöjärjestelmien rajoituksia sulkemasta taustalla toimivaa sovellusta. Työn tilaajana toimi oululainen startup-yritys, jolla oli käytössään sovelluksen aiempi versio, jossa paikannus toimi vain sovelluksen ollessa aktiivisesti käytössä (etualalla). Yrityksen toiveena oli saada sovelluksesta demoversio, jossa taustapaikannus toimisi. Taustapaikannuksen toteuttaminen Android-sovellukseen on ollut pitkään haasteena mobiilikehittäjille laitevalmistajien ja käyttöjärjestelmän asettamien rajoit-teiden vuoksi. Näitä rajoitteita on jouduttu kiertämään muun muassa asettamalla notifikaatioita ja ajastettuja taustatoimintoja, joissa ei tapahdu mitään. Sovellus toteutettiin React Nativella Expo-kehitysympäristössä TypeScript-ohjelmointikielellä. Tietoperustana käytettiin Expon omaa dokumentaatiota sekä Androidin virallisia materiaaleja. Sovellus kehitettiin Android-käyttöjärjestelmälle. Työ rajattiin käsittelemään pelkkää Android-käyttöjärjestelmää työmäärän rajaamiseksi opinnäytetyön mittaiseksi. Keskeisenä johtopäätöksenä todettiin, että taustapaikannuksen toteuttaminen on mahdollista, mutta se vaatii useita toimenpiteitä, kuten taustalla tapahtuvia toimintoja, Foreground Servicen käyttöä ja sovellukselle asetettujen rajoitusten muuttamista. Opinnäytetyön tuloksena syntyi toimiva demoversio Android-sovelluksesta, jossa taustapaikannus toimii. Kehitysehdotuksena jatkoa varten olisi lisätä sovellukseen iOS-tuki.
