Hyppää sisältöön
    • Suomeksi
    • På svenska
    • In English
  • Suomi
  • Svenska
  • English
  • Kirjaudu
Hakuohjeet
JavaScript is disabled for your browser. Some features of this site may not work without it.
Näytä viite 
  •   Ammattikorkeakoulut
  • Metropolia Ammattikorkeakoulu
  • Opinnäytetyöt
  • Näytä viite
  •   Ammattikorkeakoulut
  • Metropolia Ammattikorkeakoulu
  • Opinnäytetyöt
  • Näytä viite

Android-sovelluksen koodin ja arkkitehtuurin uudistaminen

Jalava, Elisa (2019)

 
Avaa tiedosto
jalava_elisa.pdf (573.6Kt)
Lataukset: 


Jalava, Elisa
2019
Näytä kaikki kuvailutiedot
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2019060515041
Tiivistelmä
Insinöörityössä Android-sovellus uudistettiin koodipohjalta. Tarkoituksena oli päivittää sen tietokanta ja käyttöliittymä käyttäen Androidin arkkitehtuurikomponentteja. Sovelluksen arkkitehtuurista oli tarkoitus saada selkeää ja koodista luettavaa, jotta uusia ominaisuuksia pystyttäisiin toteuttamaan.

Sovelluksessa käytettiin aluksi kovakoodattua SQLite-tietokantaa. Perinteisen SQLiten ollessa työläs käsitellä, ei tietokannan rakennetta pystytty päivittämään. Uusia ominaisuuksia varten tietokanta piti päivittää uuteen versioon ja vanha koodi uudistettava.

Uudistukseen käytettiin Googlen tarjoamaa Room-arkkitehtuurikomponenttia. Room on ORM-tyylinen abstrakti kehys SQLiten ylle. Se mahdollistaa tehokkaan yhteyden Java-koodin ja SQLite-tietokannan välillä muuttamalla tietokantahaun tuloksia Java-objekteiksi ja Java-objekteja tietokantaobjekteiksi.

Migraatio aloitettiin luomalla jokaiselle tietokantataululle omat Entity- ja DAO-luokkansa. Entity-luokat toimivat tietokantataulujen malleina, jotta Room voi annotaatioiden avulla luoda niistä Java-olioita. DAO-luokat tarjoavat abstraktit metodit tietokannan kanssa työskentelemiseen.

DAOt yhdistetään RoomDatabase-olioon, joka rakennetaan sovelluksen ajon alussa ja suorittaa migraatiot. Tämän sovelluksen migraatio oli kaksivaiheinen.

Tietokanta liitetään näkymään joko kontrollerin tai ViewModelin kautta. Kontrolleri sisältää metodit yleisille tietokantatoiminnoille.

ViewModel tarjoaa näkymälle tarkkailijan, joka tarkkailee tietokantakyselyä tai -oliota. Muutoksen tapahduttua näkymää huomautetaan ja UI-päivitys tehdään. Tarkkailtavat ovat LiveData-objekteja, jotka sisältävät kyselyn tuloksen. Jokaiselle näkymäfragmentille tehtiin oma malliluokkansa. Mallit ovat elinkaaririippuvaisia: ne ovat aktiivisina silloin, kun näkymä on.

Tuloksena sovelluksen jatkokehittäminen on sujuvampaa.
Kokoelmat
  • Opinnäytetyöt
Ammattikorkeakoulujen opinnäytetyöt ja julkaisut
Yhteydenotto | Tietoa käyttöoikeuksista | Tietosuojailmoitus | Saavutettavuusseloste
 

Selaa kokoelmaa

NimekkeetTekijätJulkaisuajatKoulutusalatAsiasanatUusimmatKokoelmat

Henkilökunnalle

Ammattikorkeakoulujen opinnäytetyöt ja julkaisut
Yhteydenotto | Tietoa käyttöoikeuksista | Tietosuojailmoitus | Saavutettavuusseloste