androidi rakenduse loomine kov matkarajal leitava …inga/hpk/keijo_koort.pdf · minu diplomitöö...
TRANSCRIPT
TALLINNA ÜLIKOOL
Haapsalu Kolledž
Rakndusinformaatika õppekava
Keijo Koort
ANDROIDI RAKENDUSE LOOMINE KOV MATKARAJAL
LEITAVA INFO KUVAMISEKS KASUTADES MIT APP
INVENTOR 2 VEEBIRAKENDUST
Diplomitöö
Juhendaja: Priidu Paomets
Haapsalu 2017
TALLINNA ÜLIKOOL
Haapsalu Kolledž Osakond: Rakendusinformaatika
Töö pealkiri: Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks
kasutades MIT App Inventor 2 veebirakendust
Teadusvaldkond: rakendusinformaatika - arvutiteadused
Uurimuse tasand: diplomitöö Kuu ja aasta: juuni, 2017 Lehekülgede arv: 32
Referaat:
Käesoleva diplomitöö eesmärgiks oli uurida plokkidel põhinevat visuaalset
programmeerimist ja selle abil Android operatsioonisüsteemil töötava rakenduse loomine
kohalikule omavalitsusele Abja jalgratta- ja matkarajal vaatamisväärsuste kohta
lisainformatsiooni jagamiseks. Töös kirjeldatakse valminud rakenduses kasutatud
visuaalseid plokke, nende toimimist ja vajalikkust. Eesmärgi täitmiseks tutvustati
visuaalse programmeerimise veebirakendust MIT App Inventor 2 ja teostati eesmärgiks
seatud rakenduse loomine.
Diplomitöö koosneb kolmest peatükist. Esimeses peatükis räägitakse visuaalsest
programmeerimisest, kirjeldatakse MIT App Inventor 2. Teises peatükis tutvustatakse töö
praktilise osana valminud rakenduse loomist Abja jalgratta- ja matkarajal olevate
vaatamisväärsuste kuvamiseks. Töö viimases osas selgitatakse, kuidas rakendust testiti ja
milline näeb välja rakenduse edasine kasutamine. Diplomitöö eesmärk sai täidetud
valminud rakenduse tegemisega.
Võtmesõnad: Androidi rakendus, MIT App Inventor 2, visuaalne programmeerimine
Säilitamise koht:
TLÜ Haapsalu Kolledži raamatukogu
Töö autor: Keijo Koort allkiri:
Kaitsmisele lubatud:
Juhendaja: Priidu Paomets allkiri:
TALLINN UNIVERSITY
Haapsalu College Department: Applied Computer Science
Title:
Creating an Android Application to Display Local Municipality’s Hiking Trail
Information Using the MIT App Inventor 2 Web Application.
Science area: Computer Sciences
Level: Diploma Thesis Year and month: June, 2017 Number of pages: 32
Summary:
The aim of this thesis is to study block based visual programming language and with the
help of it to create an application that runs on the Android operating system in different
devices. This thesis describes the visual blocks that were used in a completed application,
their function and necessity. In achieving the aim, the visual programming web application
MIT App Inventor 2 was examined. In addition, the aimed application was created.
The thesis consists of three parts. The first chapter is about visual programming languages,
description of MIT App Inventor 2 is presented. The second chapter introduces an
application as a practical part of the thesis. The application displays information about
Abja’s hiking trail. The last chapter explains how this application was tested and in what
way the application finds a further use.
Key words: Visual Programming Language, MIT App Inventor 2, Android Application
Deposition
The Library of Haapsalu College of Tallinn University
Author of the thesis: Keijo Koort signature:
Approved for dissertation:
Academic advisor: Priidu Paomets signature:
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 2
Keijo Koort
SISUKORD
SISSEJUHATUS ................................................................................................................... 3
1. VISUAALNE PROGRAMMEERIMINE ..................................................................... 5
1.1. Scratch .................................................................................................................... 6
1.2. Blockly .................................................................................................................... 7
1.3. MIT App Inventor 2 .............................................................................................. 10
1.3.1. Disainivaate lühikirjeldus .............................................................................. 11
1.3.2. Plokivaate lühikirjeldus ................................................................................. 12
2. ABJA MATKARAJA RAKENDUSE LOOMINE ..................................................... 16
2.1. Graafiline disain .................................................................................................... 17
2.2. Asukoha määramiseks kasutatud plokkide kogumid ............................................ 18
2.2.1. GPS’i kasutamine asukoha tuvastamisel ....................................................... 18
2.2.2. QR koodi kasutamine asukoha tuvastamisel ................................................. 20
2.2.3. Kasutaja juhatamine tagasi Abja Spordi- ja Tervisekeskusesse .................... 21
2.3. Veebis kuvatav informatsioon ja selle haldamine ................................................ 22
3. RAKENDUSE TESTIMINE JA KASUTAMINE ...................................................... 23
3.1. Rakenduse testimine sisetingimustes .................................................................... 23
3.2. Rakenduse testimine välitingimustes .................................................................... 25
3.3. Rakenduse kasutamine .......................................................................................... 26
KOKKUVÕTE .................................................................................................................... 27
ALLIKAD ........................................................................................................................... 29
LISA. VALMINUD RAKENDUSE TÖÖVOOG
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 3
Keijo Koort
SISSEJUHATUS
2016. aasta viimasel veerandil müüdi üle maailma pea pool miljonit nutiseadet. Nendest
81.7% moodustasid Android operatsioonisüsteemiga seadmed (Gartner, 2017). Eesti
kohalikul jaeturul seevastu müüdi GfK statistika andmetel 2017. aasta märtsis 27 400
mobiiltelefoni (Elisa, 2017). Seega tänapäevases tehniliselt kiiresti arenevas maailmas jääb
inimeste füüsiline vorm mugavuste meelevalda ning unustatakse, et liikumine on meie üks
esmastest vajadustest. Selleks, et meie keha ja vaim terved püsiksid, peame olema füüsiliselt
aktiivsed. (Viigimäe, 2008)
Järjest enam on hakatud tähelepanu pöörama erinevatele võimalustele muuta liikumine
inimestele atraktiivsemaks. Abja-Paluoja kohalik omavalitsus on sellega algust teinud juba
aastal 2009, kui maasse sai Abja Spordi- ja Tervisekeskuse nurgakivi (Raidsalu, 2009).
Tänaseks on valminud täismõõtmetes sisespordisaal, ujula ning treeningsaalid. Peagi tehtava
jalgratta- ja matkaraja populariseerimiseks on kohalik omavalitsus käinud välja idee
ühildada liikumine, nutiseadmed, Abja vaatamisväärsused ja ajalugu üheks tervikuks.
Minu diplomitöö eesmärgiks on uurida plokkidel põhinevat visuaalset programmeerimist ja
luua selle abil Abja Spordi- ja Tervisekeskusele rakendus, mis töötab Android
operatsioonisüsteemil erinevates seadmetes. Töös kirjeldan valminud rakenduses kasutatud
visuaalseid plokke, nende toimimist ja vajalikkust. Sihiks on teha rakendus, mida kasutades
on võimalik peagi valmival jalgratta- ja matkarajal saada lisainformatsiooni teel olevate
vaatamisväärsuste kohta. Valminud rakendus on kasulik neile, kes laenutavad Abja Spordi-
ja Tervisekeskusest jalgratta või liiguvad jalgsi ning lähevad tutvuma ajalooliste paikadega
Abja-Paluojal ja selle ümbruses. Tellijapoolseks sooviks on, et rakendus oleks lihtsalt
kasutatav, kuvatav informatsioon vähese vaevaga hallatav, võimaldaks näidata pilte ning
vajadusel kuulata lisainformatsiooni.
Oma töö esimeses peatükis annan lühiülevaate visuaalsest programmeerimisest ja sellega
seotud laialt levinud tarkvaradest Scratch ja Blockly. Lisaks teen ülevaate MIT App
Inventori ajaloost ja kasutamisest. Teises peatükis põhjendan praktilise töö teostamiseks
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 4
Keijo Koort
kasutatud veebirakenduse valikut. Lisaks kirjeldan Abja jalgratta- ja matkarajal asuvate
vaatamisväärsuste kohta informatsiooni jagava rakenduse loomiseks vajalikke plokke ning
nende kasutamist. Kolmandas peatükis testin valminud rakenduse töötamist erinevatel
tingimustel ja seadmetes. Selgitan välja valminud rakenduse puudused ja täiendamise
vajaduse.
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 5
Keijo Koort
1. VISUAALNE PROGRAMMEERIMINE
Visuaalne programmeerimine (VPL - Visual programming languages) lubab kasutajal luua
rakendusi visuaalsete elementide abil. Algsemad visuaalsed programmeerimised toimisid
lihtsate kastide ja noolte põhjal. (Dehouck, 2015)
Praeguses tehnoloogiast küllastunud igapäevas kasutatakse programmeerimise algõppes
tihti kõige lihtsamat visuaalset programmeerimist, pliiatsit ja paberit. Selline paberile
kirjapanemine aitab õpilastel sageli paremini näha ja tekitada arusaama, kuidas töötab
programmi juhitud robot - milliseid käske on võimalik talle jagada ning mis järjekorras need
peaksid toimuma. (Code.org, s.a.)
Tänu visuaalsele programmeerimisele on võimalik koolinoortes tekitada huvi antud teema
vastu, sest range käskudena koodikirjutamine võib olla õpilaste jaoks tihti hirmutav.
Koodikirjutamine ning käskude õppimine tekstina on aeganõudev ja täpne töö. Seevastu
visuaalselt klotse tõstes on võimalik väga kiiresti aru saada, kas soovitud idee töötab või
mitte. Selle lihtsuse tõttu kasutavad paljud noortele mõeldud robootikakomplektid oma
programmeerimisel visuaalset võimalust. (Lego Mindstorms, s.a.)
Joonis 1. Lihsam näide visuaalsest programmeerimisest (Flowgorithm, s.a.)
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 6
Keijo Koort
Tänaseks on arendatud visuaalse programmeerimise värviliste plokkide juurde ka
niinimetatud graafiliste ja ikooniliste elementidega keeled. Nende keelte loomise põhjuseks
on tuua programmeerimine inimestele lähemale ja teha rakenduste loomine
kasutajasõbralikumaks. Uudse visuaalse programmeerimise peamisteks elementideks on
plokid, mis sobituvad kokku nagu pusletükid, andes kasutajale vihjeid nii tükkide
omavahelise kokkusobivuse kui ka kasutamise kohta. Oluline on, et soovija saab luua
töötavaid programme ja teha valmisrakendusi VPL plokke omavahel sidudes. Nende
plokkide taga toimub rohkem, kui kasutaja näeb. (Dehouck, 2015) Üheks enim levinud VPL
keeleks võib pidada Scratch’i. Seda seetõttu, et antud veebirakendust ja selle plokke on
tõlgitud paljudesse keeltesse, sealhulgas ka eesti keelde. (Scratch, s.a.) Scratch’i VPL
visuaalset pilti ja keelt kasutab ka Blockly (Dehouck, 2015).
1.1. Scratch
Scratchi puhul on tegemist Massachusettsi Tehnoloogiainstituudi poolt 2005. aastal
ametlikult ilmavalgust näinud visuaalse programmeerimise tarkvaraga. Tegemist on
keskkonnaga, mis võimaldab luua interaktiivseid ja animeeritud lugusid ning mänge.
Peamiseks sihtgrupiks peetakse 8-16aastaseid õpilasi. Scratchi peamiseks eesmärgiks on
tutvustada programmeerimist neile, kellel puuduvad igasugused kogemused programmide
kirjutamises. (Maloney, Resnick, Rusk, Silverma & Eastmond, 2010)
Scratchi kood kujuneb koodi plokke omavahel liites. Plokkide lisamiseks tuleb neid hiirega
paika lohistada, kusjuures nende kuju annab mõista omavahelise sobivuse. Süsteem ei lase
plokke omavahel valesti kokku panna. Seetõttu ei anna Scratch ka veateateid ning kogu
loodav projekt on pidevas töös ja iga muudatus koheselt Scratchi laval, kus juhitakse
kahemõõtmelisi tegelasi või pilte, näha. (Maloney, Resnick, Rusk, Silverma & Eastmond,
2010)
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 7
Keijo Koort
Oluline on, et Scratchiga programmeerimisel kasutatakse sündmuspõhist
programmeerimist, ehk iga koodiosa on seotud kindla tegelease või pildiga mõjutades tolle
tegevust. Selliseid graafilisi objekte nimetatakse Scratchis spraitideks. Igal spraidil võib olla
mitu välimust ehk kostüümi. (Vilipõld, Antoi & Mironova, 2012)
1.2. Blockly
Blockly arendus algas 2011. aastal ning esimene avalik demontsratsioon toimus 2012. aasta
maikuus. Põhilised arendajad on Neil Fraser, Ellen Spertus, Mark Friedman ja Quynh
Neutron. (Google Developers, 2014)
Blockly kasutab Scratchile visuaalselt sarnast keelt, kuid on mõeldud pigem neile, kes on
juba veidi kogenumad. Kui Scratch sisaldab endas visuaalset koodikirjutamist,
interpretaatorit ja kasutajaliidest siis Blocklyl viimane puudub. Näidisrakenduses
kasutatakse küll puuduvat osa, kuid tegelikult ei ole võimalik kohe programmeerima hakata.
Selleks on vaja eraldi kasutajaliidest, mida on võimalik ise luua või kasutada selleks juba
loodud liideseid nagu näiteks MIT App Inventor 2, Code.org, Microbit ja OzoBlockly.
(Marks, 2014) (Blockly, s.a. a)
Joonis 2. Scratchi lava ja töölaud plokkidega. (Progetiiger, s.a.)
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 8
Keijo Koort
MIT App Inventor 2 puhul kasutatakse Blockly visuaalset keelt, mis töötab JavaScipt’i
koodil, vajadusel on võimalik kood tõlkida lisaks teistesse keeltesse, nagu näiteks Python,
LUA, Dart ja PHP. Blockly eeliseks on see, et puudub töötamiseks serveri toe vajadus, sest
see toimib täielikult kasutaja arvutis. (Blockly, s.a. a)
Blockly’ga tehtud rakenduse tugevuseks on kood, mida saab viia üle tekstil põhinevale
programmeerimisele. Lisaks on Blockly avatud lähtekoodiga ning sellele on võimalik ise
plokke juurde tekitada. (Blockly, s.a. b)
Blockly’s on plokid jagatud erinevatesse kategooriatesse, igal oma põhivärv ja omadused.
Lähtudes vajadusest on kasutajal võimalus ise valida endale sobilikud plokid. Tänu sellele
ei pea rakenduse looja teadma kõiki käske - tema jaoks on oluline ekraanil visuaalselt näha.
Blockly puhul kasutatakse nii vertikaalset kui ka horisontaalset programmeerimist.
Vertikaalne programmeerimine on selline, kus koodi plokid ja töötav kood jooksevad ülevalt
alla, horisontaalse puhul võib liikuda kood vajadusel ka küljele. (Blockly, s.a. a)
Joonis 3. Blockly näidis programm (Blockly, s.a. a)
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 9
Keijo Koort
Sellise horisontaalse koodikirjutamise ainus eelis vertikaalse ees on lihtsam ja arusaadavam
ikoonide keel. Horisontaalse puhul kirjeldataksegi ploki kasutamist ilma tekstita ehk ainult
ikooniga. Lisaks on horisontaalsetel ikoonidel põhinevate plokkide kasutamine väiksematel
ekraanidel kergemini jälgitav. (Scratch Blocks, 2017)
Joonis 4. Horisontaalsed ja vertikaalsed plokid (Scratch Blocks, 2017)
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 10
Keijo Koort
1.3. MIT App Inventor 2
MIT App Inventor on visuaalse programmeerimise ja rakenduste loomise tarkvara Android
operatsioonisüsteemil töötavatele seadmetele. Antud rakendus vahetab välja keerulise
koodikirjutamise visuaalselt lihtsama vastu, kus programmeerimine toimub hiirega koodi
plokke lohistades ja kokku liites, tagades, et ka need, kes pole varem koodikirjutamisega
kokku puutunud, suudavad luua täiesti töötava nutirakenduse. Tarkvara esmane versioon
App Inventor valmis 2009. aastal Mark Friedman ja Massachusettsi Tehnoloogiainstituudi
(MIT) õppejõu Hal Abelsoni koostöös. 2010. aasta maikuust kuni detsembrini sai kasutada
App Inventorit ainult läbi kutsete. 15. detsembril 2010. aastal tehti antud veebirakendus
avalikult kõigile kättesaadavaks. 2011. aasta teises pooles andis Google, kes oli algselt koodi
omanik, veebirakenduse õigused „MIT Center for Mobile Learning“ kätte. (The App
Inventor Team, s.a.)
2013. aastal loodi MIT App Inventor 2 (Clark, 2013). Lisaks sellele, et MIT App Inventor 2
on lihtsat programmeerimist võimaldav rakendus, on selle puhul tegemist ka
veebirakendusega. See tähendab seda, et lihtsama äpi tegemise tarvis ei ole vaja enam
arvutisse laadida tarkvara, vaid kogu töö saab tehtud läbi veebilehitseja. Sealjuures võib
suure plussina välja tuua, et loodud tarkvara on alati internetist kättesaadav ja muutmisteks
valmis. (The App Inventor Team, s.a.)
MIT App Inventor 2 arendajate ülesanne on teha rakenduste loomine kõigile kättesaadavaks,
et praegustest tarbijatest saaksid soovi korral ise hoopis loojad. Suuremate võimaluste
tekitamiseks tegeletakse järjepidevalt veebirakenduse edasiarendamisega. Arenduse
põhilisteks eesmärkideks on viia programmeerimine massidesse ning luua püsiv ja
jätkusuutlik tööriist infotehnoloogiamaailmas. (The App Inventor Team, s.a.)
2015. aastaks oli kasutajate hulk kasvanud pea kolme miljonini, esindades 195 riiki. Nende
kahe aasta jooksul on antud visuaalset programmeerimist kasutades loodud Android
operatsioonisüsteemile ligi seitse miljonit rakendust. (The App Inventor Team, s.a.)
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 11
Keijo Koort
MIT App Inventor 2 on leitav veebiaadressilt http://ai2.appinventor.mit.edu. Uue rakenduse
loomiseks tuleb visuaalset programmeerimist võimaldavasse veebirakendusse siseneda
Google’i kontot kasutades. Sisenemisel küsitakse luba siduda MIT App Inventor Google’i
kontoga. Pärast nõusolekut on võimalik alustada soovitud projekti tegemisega.
1.3.1. Disainivaate lühikirjeldus
Alguses kujundab kasutaja loodava rakenduse kuvatava osa disainivaates ning lisab sinna
juurde tarvilikud komponendid, mida pärast plokkide juures vajatakse. Komponentide
lisamine toimub lohistamise teel ning hiljem on võimalik neid muuta ja eemaldada. (App
Inventor, s.a. a)
Oluline on, et disainivaates luuakse rakenduse välimus ja lisatakse tarvilikud komponendid,
mida kasutaja otseselt ei näe, kuid vajab, et rakendada seadme andureid, veebiliidest ja
ühenduvusi. Ekraani vasakul olevast menüüst tuleb soovitud moodulid tõsta ekraani keskel
olevale virtuaalsele ekraanile, pärast mida tekib lisatu paremale komponentide nimekirja.
Valides nimekirjast mooduli tekib lehekülje parempoolsemasse tulpa mooduli atribuutide
valik. Rakenduse kasutajaliidesele paigutatud nähtavaid mooduleid on võimalik joondada
horisontaalse, vertikaalse või tabeli laotuse järgi.
Disainivaate komponendid jagunevad järgmiselt:
kasutajaliides;
laotuse komponendid;
meedia komponendid;
joonistused ja animatsioonid;
andurid;
kontaktid;
andmetalletuskomponendid;
ühenduvused;
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 12
Keijo Koort
Lego Mindstorms komponendid;
eksperimentaalsed komponendid;
laiendused. (MIT App Inventor 2, s.a.)
Abja Spordi- ja Tervisekeskuse jaoks valmiva rakenduse loomiseks kasutasin tekstikaste,
silte, nuppe, erinevaid laotuse valikuid, asukoha ja koodilugemise moodulit, kella,
suunamoodulit ja veebiliidest.
1.3.2. Plokivaate lühikirjeldus
Plokivaates saab kasutada ainult neid programmeerimisplokke, mis on tulnud kaasa
disainivaatest lisatud komponentidega. Lisaks komponentidega kaasa tulnud plokkidele on
võimalik opereerida rakenduses olevate peamiste plokkidega. Kõik plokid jagunevad
järgmiselt:
Joonis 5. Disaineri vaate ekraanikuva (MIT App Inventor 2, s.a.)
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 13
Keijo Koort
juhtplokk;
loogilised operaatorid;
matemaatilised tehted;
tekstilised plokid;
nimekirjad;
värvid;
muutujaplokk;
protseduuriplokid. (MIT App Inventor 2, s.a.)
Control ehk juhtplokk on rakenduses kollakat tooni, sisaldades programmeerimises väga
levinud „if“ käsklustega plokke ning ekraanivahetusi. Peale selle on igale rakendusele
lisatud aktiivmoodulil vähemalt üks juhtplokk, mis hoiab töös paigaldatud komponenti.
Näiteks saab kirjeldada, mida teeb rakendusele lisatud nupp kui seda vajutada, hoida all või
üle nupu liikuda. Enamasti saab viia juhtplokkide sisse ülejäänud plokid, välja arvatud
protseduurilised, mis toimivad sarnaselt juhtplokkidega ehk sisaldavad endas plokkide
kogumit.
Logic ehk loogilised operaatorid on helerohelised ja sisaldavad endas loogikaväravaid -
true, false, and ja or. Töö käigus valminud rakenduses kasutasin tühjade tekstikastide
peitmiseks või vajadusel näitamiseks nähtavuse valiku muutmist.
Joonis 6. Plokkide valik ja nupu juhtploki näide (MIT App Inventor 2, s.a.)
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 14
Keijo Koort
Math ehk matemaatilised tehted võimaldavad rakenduses väga erinevaid arvutusi läbi viia.
Valminud programmis kasutasin testimiseks mõeldud ekraanil suvalise täisarvu
genereerimist. Ekraanile kuvati iga poole sekundi järel uus täisarv ja tänu sellele oli näha
rakenduse töösolek.
Text ehk tekstilised plokid võimaldavad teksti sisestada, võrrelda, liita ja asendada
tekstikastides. Abja Spordi- ja Tervisekeskuse tarbeks loodava matkaraja rakenduses
kasutasin tekstilisi plokke informatsiooni kuvamisel, võrdlemisel ja liitmisel.
Lists ehk nimekirjad võimaldavad luua nimekirju. Peale selle vastavalt vajadusele kirjeid
nimekirjadest lisada, eemaldada ja valida. Vajaduse puudumise tõttu ma rakenduse loomisel
nimetatud plokki ei kasutanud.
Colors ehk värvid võimaldavad muuta moodulite ja tekstide värve rakenduses. Nagu
nimekirjadegi puhul, ei kasutanud ma rakenduses kirjeldatud plokki.
Variables ehk muutujaplokid on nimelised viited erinevatele väärtustele. MIT App Inventor
2 puhul kasutatakse lokaalseid ja globaalseid muutujaid. Lokaalsed toimivad ainult ühe
kontrollploki sees, globaalsed seevastu kogu kuvatava ekraani koodi plokkides. Valminud
rakenduses kasutasin globaalseid muutujaid, et viia asukoha sensorist tulev lokaalne
muutuja juhtplokki, kus võrreldi väärtuseid eelnevalt määratud asukoha väärtustega.
Joonis 7. Tekstikasti nähtavuse sisse- ja väljalülitamine (MIT App Inventor 2, s.a.)
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 15
Keijo Koort
Procedure ehk protsetuuriplokid aitavad säästa samade plokkide kordamist. Selle asemel,
et luua ühesuguseid plokkide kogumeid, tuleb luua üks plokkide grupp, millele antakse
sobilik nimi ja mida vajadusel välja kutsutakse. Teistes keeltes võidakse sellist plokki
nimetada ka funktsiooniks või meetodiks.
Joonis 8. Asukoha mooduli informatsiooni lisamine globaalsele muutujale ja asukohale nime
leidmine (MIT App Inventor 2, s.a.)
Joonis 9. Protsetuuriplokid (MIT App Inventor 2, s.a.)
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 16
Keijo Koort
2. ABJA MATKARAJA RAKENDUSE LOOMINE
Minu diplomitöö põhieesmärgiks on rakenduse loomine kohalikule omavalitsusele ja Abja
Spordi- ja Tervisekeskusele peagi valmiva jalgratta- ja matkaraja tarbeks. Rakenduse abil
on võimalik saada lisainformatsiooni rajal olevate vaatamisväärsuste kohta. Rakenduse
tellija soovib minna kaasa tänapäevase suunaga pakkuda inimestele interaktiivset
informatsiooni nutiseadmest. Lisaks on massiivsete infotahvlite paigaldamine rajale kulukas
ja teabe osas piirav. Kompaktse infosildi paigaldamine QR-koodi abil pakub paremaid
võimalusi olulise jagamiseks ning ootamatuste korral on selle taastamine kohalikule
omavalitsusele rahaliselt soodsam. Peale selle on võimalik soovi korral alati rajal olevat
informatsiooni muuta, täiendada, lisada juurde audiovisuaalseid elemente jne.
Valminud rakendus on kasulik neile, kes laenutavad Abja Spordi- ja Tervisekeskusest
jalgratta või liiguvad jalgsi ning lähevad tutvuma ajalooliste paikadega Abja-Paluoja
matkarajal ja selle ümbruses. Tellijapoolseks sooviks oli, et rakendus oleks lihtsalt
kasutatav, kuvatav informatsioon vähese vaevaga hallatav, võimaldaks näidata pilte ning
vajadusel kuulata lisainformatsiooni.
Lähtudes eelnevast otsustasin luua rakenduse MIT App Inventor 2-ga, mis tellijapoolseid
soove täita lubas. Veel kõneles visuaalse programmeerimise poolt eelkõige
kasutajasõbralikkus ja mugavus. Lisaks on kõik tehtavad muudatused loomise käigus
koheselt nutiseadmes nähtavad ja erinevalt tekstil põhinevast programmeerimisest on vigade
tõenäosus väiksem. Samuti oli mul soov tutvuda rakenduse loomisega selleks, et vajalikku
tarkvara õpetada teistelegi huvilistele ning näidata kui kasutajasõbralik on programmeerida
nutiseadmele.
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 17
Keijo Koort
2.1. Graafiline disain
Abja matkarajal teabe jagamiseks mõeldud rakenduse graafilise disaini nõudeks Abja
Spordi- ja Tervisekeskuse ning kohaliku omavalitsuse poolt oli lihtsus ja selgus. Eelkõige
seetõttu, et valminud rakenduse kasutajateks on väga erineva vanusegrupi inimesed. MIT
App Inventoris kasutatakse kuvamiseks ekraane, mida veebirakenduse looja saab
programmile juurde lisada. Alustades tuleb arvestada sellega, et uue projekti tegemisel
tekkiv esimene ekraan „Screen1“ jääb põhiekraaniks, mis kuvatakse rakenduse avamisel.
Avaekraani atribuutide alt saab anda rakendusele nime, lisada ikooni ja edasiarenduse puhul
ka versiooni numbri. Soovil kasutada teist ekraani esimesena, tuleb lisada plokid selliselt, et
toimuks suunamine vajalikule ekraanile.
Joonis 11. Avaekraanilt suunamine ekraanile nimega „Esimene“ (MIT App Inventor 2, s.a.)
Joonis 10. Kuvatõmmised nutitelefonist
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 18
Keijo Koort
2.2. Asukoha määramiseks kasutatud plokkide kogumid
Diplomitöö käigus valminud Abja jalgratta- ja matkaraja kohta teavet jagavas rakenduses
on peamisteks plokkide kogumid, mida kasutatakse vastavalt programmis kuvatavale
informatsioonile ja vajadusele. Rakenduses on info kuvamiseks oluline tuvastada kasutaja
asukoht. Seda saab teha kahel viisil - nendest mugavaim on kasutaja kindlaks tegemine GPS
süsteemi põhjal. Teine võimalus on füüsiliselt kohapeal olles lugeda kasutaja asukoht välja
infotahvlil olevalt QR koodilt (Wikipedia. s.a).
2.2.1. GPS’i kasutamine asukoha tuvastamisel
GPS ehk ülemaailmne asukoha määramine on satelliitidel põhinev süsteem, millega saab
kasutaja asukoha kindlaks teha (Vikipeedia. s.a.). GPS mooduli käiku laskmiseks on vaja
lisada rakendusele nähtamatu asukoha moodul. Kui see on ekraanile tõstetud, saab plokkide
vaates kasutada „LocationSensor“ juhtplokki.
GPS lülitatakse seadmes rakendust avades automaatselt sisse. Samal ajal määratakse ajaline
intervall, mille jooksul asukohta kontrollitakse. Samuti lülitatakse sisse taimer, mida
kasutatakse hiljem teksti värskendamisel.
Kasutaja otsusel rakendada informatsiooni saamiseks GPS’i tuleb teha sellekohane valik
programmi peamenüüs. Uuel ekraanilehel teeb rakendus selgeks, kus seade paikneb.
Programm kuvab kasutaja pikkus- ja laiuskraadi ainult siis, kui on saanud selle kindlaks
Joonis 12. GPS mooduli sisselülitamine ekraani avamisel (MIT App Inventor 2, s.a.)
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 19
Keijo Koort
määrata. Muul juhul kuvatakse kasutajale „Otsin...“. Pikkus- ja laiuskraade kuvatakse
seadmes kümnendkraadides.
GPS ekraanil kuvatakse lisaks eelnevale veel seadme kiirus ja ekraani alumises osas
kompassi nool näitamaks põhja-lõuna suunda. Selle rakendamiseks kasutasin seadmes oleva
digitaalse kompassi asimuudi väärtust, mis on päripäeva nurk põhja ja seadme suuna vahel.
Väärtuseid mõõdetakse 0-360 kraadini (Mereviki. s.a). Saades väärtuse keeratakse kompassi
noolega pilt asimuudi väärtusega võrdseks.
Joonis 13. Kompassi nõela pildi pööramine vastavalt asimuudi nurgale (MIT App Inventor
2, s.a.)
Olles seadmega umbes saja meetri läheduses vaatamisväärsusele, kuvatakse seadme
ekraanile asukoha lisainformatsioon. Vajadusel on võimalik rakenduse pikkus- ja
laiuskraadide kontrollis kinnitada asukoht ligikaudu kümne meetri täpsusega. Sel puhul peab
olema GPS signaal tugev, vastasel juhul metsas ja suuremate hoonete läheduses võib tekkida
probleem, kus rakendus ei saa aru, millise kohaga on tegemist. Raja läbijale mugavamaks
kasutamiseks jätsin pikkus- ja laiuskraadide võrdluse vahemiku suuremaks - umbes 100
meetrit.
Tuleb ära märkida, et asukohapunktide pikkus- ja laiuskraadide lisamine oli tülikas ja
aeganõudev. Rakenduse järgmise versiooni puhul tuleb koordinaadid lisada andmebaasi
kaudu, nii on võimalus juurde tekitada rohkem matkaradu ja infopunkte.
Avanenud ekraanile tuleb informatsioon veebilehelt, kust on võimalik vaadata asukohaga
seotud fotosid, lugeda informatsiooni ja mängida audiovisuaalseid faile.
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 20
Keijo Koort
2.2.2. QR koodi kasutamine asukoha tuvastamisel
QR koodi kaudu asukoha tuvastamiseks peab kasutaja lugema seadmesse asukohas olevalt
infotahvlilt QR koodi. Selleks rakendab MIT App Inventor 2 sisseehitatud koodilugemise
tarkvara, mis töötab lisaks QR koodile ka tavalise ribakoodiga. Võimalus on mitte kasutada
sisseehitatud koodilugemist, kuid sellisel juhul peab olema nutiseadmele eelnevalt
paigaldatud koodilugemise tarkvara. Programmi kasutamise lihtsustamiseks jäi valminud
rakenduses valik sisseehitatud QR koodi lugeja peale.
Joonis 14. Koordinaatide võrdlemine ja kasutaja suunamine vastavale ekraanile (MIT App
Inventor 2, s.a.)
Joonis 15. QR koodi lugemise näide (MIT App Inventor 2, s.a.)
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 21
Keijo Koort
Koodi lugedes teeb programm kindlaks väärtused ning kirjeid võrreldes avab rakenduses
sobiliku ekraani. Kui loetud kood ei osutu selleks, mis on valikutes, kuvatakse veateade ja
palutakse uuesti proovida. Koodi lugemisel ilma Abja matkaraja rakenduseta kuvatakse
ainult vaatamisväärsuse nimetus.
2.2.3. Kasutaja juhatamine tagasi Abja Spordi- ja Tervisekeskusesse
Kui rakenduse kasutaja on rajalt eksinud või soovib tagasi pöörduda algusesse, on tal
võimalik valida peamenüüst „Juhata Abja Spordi- ja Tervisekeskusesse“. Pärast selle valiku
tegemist käivitub MIT App Inventor 2 „ActivityStarter1“ moodul. Selle mooduli ülesandeks
on avada seadmes Google Maps rakendus ja näidata avanenud ekraanil teekonda tagasi
matkaraja algusesse. „ActivityStarter“ mooduli kaudu saab avada seadmes lisaks teisigi
rakendusi ning nendele koheselt sobilikke andmeid anda. Iga erinev rakendus, mida
soovitakse avada, peab olema eraldi „ActivityStarter“ mooduliga. Sel juhul annab Abja
jalgratta- ja matkaraja äpp Google Maps rakendusele aadressi, mis koosneb seadme
praegusest asukohast ja lõppkoordinaatidest. Seega juhatatakse kasutaja hetkelisest
asukohast tagasi algusesse, Abja Spordi- ja Tervisekeskusesse.
Joonis 16. „ActivityStarter1“ kaudu antav informatsioon (MIT App Inventor 2, s.a.)
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 22
Keijo Koort
2.3. Veebis kuvatav informatsioon ja selle haldamine
Kui Abja jalgratta- ja matkaraja rakendus on teinud asukoha selgeks ning paigaks on üks
nendest punktidest, kus lisainformatsiooni kuvatakse, suunatakse kasutaja rakenduses
vastavale ekraanile, millel näidatakse internetis oleva veebilehe teavet. Informatsioon
kuvatakse lihtsama ja mugavama administreerimise tõttu WordPress sisuhaldusega loodud
veebilehelt. WordPress lehtedele on võimalik paigutada lisaks tekstile ka fotosid, videosid
ja helifaile (WordPress. s.a.). Näitena toodud Abja-Paluoja postimaja lehel on hoone
illustreerimiseks lisatud heli, pilt ja tekst. Helifail jääb mängima ka siis, kui seadme ekraan
lukustatakse - peatamiseks tuleb lahkuda lehelt või vajutada „start/paus“ nupule.
Kuvatava informatsiooni kogumine, lisamine veebilehele ja haldamine jääb kohaliku
omavalitsuse ja Abja jalgratta- ja matkaraja töörühma ülesanneteks. Selleks on veebilehe
toimetajatel eraldi kontod. Lisaks juhendasin, kuidas WordPress haldusliidese kaudu
tegutseda. Täiendavalt on huvilistel võimalik veebilehel olevat informatsiooni lugeda ka
ilma rakenduseta, kohaliku omavalitsuse veebilehe kaudu.
Joonis 17. Telefoni kuvatõmmis informatsiooni lehelt
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 23
Keijo Koort
3. RAKENDUSE TESTIMINE JA KASUTAMINE
Rakenduse testimine töötamise käigus on oluline, et selgitada välja tekkivad probleemid
arendamise ajal. Kontrollitud tingimustel on programmi testimiseks hea kasutada erinevaid
seadmeid ja operatsioonisüsteemi versioone, sest kasutajate võimalused võivad olla väga
erinevad. Esimesed testimised sooritasin kodustes tingimustes ja rakenduse arenduse
lõppfaasis kasutasin kontrollimiseks kuut erinevat nutiseadet. Valminud rakenduse
töövooga saab tutvuda diplomitöö lisas, kus on näha erinevatel ekraanidel liikumise
võimalused ja kuvatav teave Abja postkontori näitel.
3.1. Rakenduse testimine sisetingimustes
Abja jalgratta- ja matkaraja rakenduse testimiseks kasutasin nutitelefoni Honor 8 (Android
7.0) ja tahvelarvutit Asus Nexus 7 (Android 5.1.1). Valminud rakenduse koheselt
testimiseks, on kolm võimalust. Vahendid selleks on projekti loomise juures lehe üleval
servas „Connect“ valiku all. Esimene ja nendest kõige lihtsam on AI Companion, mille
tarbeks on vaja, et WiFi ühendusega arvuti ja nutiseade asuvad mõlemad samas võrgus.
Ühenduse loomiseks on nutiseadmele tarviline installeerida MIT AI2 Companion rakendus
Google Play kaudu. Pärast paigaldamist ja käivitamist tuleb arvutist algatada ühendamine.
Selleks kuvatakse ekraanile QR kood koos tekstilise võtmega. Nutiseadmes tuleb vastavalt
soovile kood käsitsi kirjutada või valida QR pildistamine ning ühendamine.
Joonis 18. Kuvatõmmis Google Play poest
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 24
Keijo Koort
Teine võimalus on nutiseade arvutiga ühendada USB kaudu. Selleks peab personaalarvutis
töötama aiStarter, mis on App Inventori kodulehelt allalaetav. Pärast aiStarteri käivitamist
tuleb algatada ühendamine veebilehitsejast. (App Inventor, s.a b)
Joonis 19. Kuvatõmmis aiStarteri toimimisest
Viimane võimalus rakenduse katsetamiseks on Androidi emulaatori kasutamine. Kuivõrd
Abja jalgratta- ja matkaraja rakendus kasutab GPS’i ja kaamerat, jäi programmi
rakendamine ära eelmainitute emulaatorist puudumise tõttu.
Rakenduse katsetamine vales asukohas nõudis GPS’i petmist „Fake GPS Location Spoofer
Free“ abil. Selle ülesandeks oli panna nutiseade uskuma, et asutakse seal, kus testimine
peaks tegelikult aset leidma. Sellisel viisil sai proovida, millistel pikkus- ja laiuskraadidel
matkaraja rakendus infot kuvab.
Joonis 20. Kuvatõmmis Google Play poest
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 25
Keijo Koort
3.2. Rakenduse testimine välitingimustes
Rakenduse testimiseks välitingimustes kasutasin nutitelefone Honor 8 (Android 7.0),
Samsung Galaxy A5 (Android 6.0.1) ja Just5 Freedom X1 (Android 5.1) ning tahvelarvuteid
Lenovo Tab 3 (Android 6.0), Asus Nexus 7 (Android 5.1.1) ja Huawei MediaPad T1
(Android 4.4.4). Valminud äpi seadmetesse paigaldamiseks tuleb MIT App Inventor 2
veebirakenduses valida ülemisest Build menüüst QR koodiga programmi paigaldamine.
Seadmesse tuleb lugeda veebirakenduse poolt näidatud QR kood. Samas enne rakenduse
paigaldamist tuleb lubada tundmatutest allikatest allalaetud rakenduste paigaldamine.
Testimise käigus ilmnes, et Just5 Freedom X1 nutitelefonis ning Huawei MediaPad T1 ja
Lenovo Tab 3 tahvelarvutites kompassi moodul ei töötanud, sest seadmetes tõenäoliselt
puudub digitaalne kompass. Ülejäänud seadmetes kompassi moodul funktsioneeris. Teiste
moodulite puhul tõrkeid ei tekkinud - kõik toimisid testitavates nutitelefonides ja
tahvelarvutites probleemideta.
Joonis 21. Testitavad seadmed õigel asukohal
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 26
Keijo Koort
Rakenduse installeerimisel küsitakse kasutajalt nõusolekut erinevatele teenustele ja
õigustele, mis on vajalikud programmi töötamiseks. Abja matkaraja kohta infot jagava
rakenduse puhul on oluline seadmel kaamera olemasolu ja asukoha luba. Pärast paigaldamist
tekib nutitelefoni või tahvelarvuti äppide hulka valminud rakendus, mida saab käivitada
ilma, et seade tuleks ühendada MIT App Inventor 2 veebirakendusega.
Allalaetud rakenduse puhul ei kuvata uusi muudatusi, mis on sisse viidud rakenduse
edasiarendamise käigus. Selleks tuleb rakendus uuesti QR koodiga alla laadida.
3.3. Rakenduse kasutamine
Diplomitöö koostamise käigus valminud Abja jalgratta- ja matkarajal asuvate
vaatamisväärsuste kohta informatsiooni jagav äpp vastas tellija soovile ja rakendust
tutvustava demonstratsiooni viisin läbi Abja jalgratta- ja matkaraja töörühma liikmetele
edukalt. Teabe koondamisega rajal läbikäidavate punktide kohta tegeleb kohaliku
omavalitsuse poolt määratud töögrupp, kellel on olemas toimetaja õigused. Esialgu
installeeritakse rakendus Abja Spordi- ja Tervisekeskusest ratta laenutanu nutiseadmesse
tema nõusolekul. Lisaks on raja läbijal oma nutiseadme puudumisel võimalik kasutada
tervisekeskusele kuuluvat ja eelnevalt seadistatud tahvelarvutit. Pärast rakenduse kasutamist
kogutakse kasutajailt tagasisidet rakenduse töötamise, kasutusmugavuse ja informatiivsuse
kohta. Oodatud on kõik ettepanekud.
Esimesel hooajal kogutud tagasiside põhjal viiakse sisse rakenduses parandused ja
valmistatakse ette selle üleslaadimine Google Play äppide nimekirja, kust kõigil Android
operatsioonisüsteemil töötavate nutiseadmete omanikel on võimalus Abja jalgratta- ja
matkaraja rakendus alla laadida.
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 27
Keijo Koort
KOKKUVÕTE
Minu diplomitöö eesmärgiks oli uurida plokkidel põhinevat visuaalset programmeerimist ja
selle abil Android operatsioonisüsteemil erinevates seadmetes töötava rakenduse tegemine.
Töös kirjeldasin loodud rakenduses kasutatud visuaalseid plokke, nende vajalikkust ja
töötamise põhimõtteid. Eelnimetatu tulemina valmis Abja Spordi- ja Tervisekeskusele
rakendus, mida kasutades on võimalik peagi tehtaval Abja jalgratta- ja matkarajal saada
lisainformatsiooni teel olevate vaatamisväärsuste kohta.
Rakendus vastab tellija soovile - on lihtsalt kasutatav, vähese vaevaga WordPressi
veebilehel hallatav, võimaldab näidata pilte ning kuulata lisainformatsiooni. Teabe
koondamisega veebilehele tegeleb kohaliku omavalitsuse poolt määratud töögrupp, kellel
on olemas toimetaja õigused.
Oma töö esimeses peatükis andsin lühiülevaate visuaalsest programmeerimisest, sellega
seotud tarkvaradest Scratch ja Blockly, lisaks tutvustasin MIT App Inventori ajalugu ja
kasutamist. Teises peatükis põhjendasin praktilise töö teostamiseks kasutatud
veebirakenduse valikut ja kirjeldasin Abja jalgratta- ja matkaraja rakenduse loomiseks
vajalikke plokke ning nende kasutamist. Kolmandas peatükis testisin valminud programmi
töötamist erinevatel tingimustel ja seadmetes.
Abja matkarajal asuvate vaatamisväärsuste kohta informatsiooni jagava rakenduse tegin
MIT App Inventor 2-ga. Selle kasuks kõneles eelkõige kasutajasõbralikkus, mugavus ja
pidev muudatuste kontrollimise võimalus reaalajas isiklikust seadmest. Kuigi rakendusega
töötades sain aru, et visuaalsel programmeerimisel on siiski piiranguid tekstilise
programmeerimise ees - asukohapunktide lisamine oli tülikas ja aeganõudev. Peale selle tuli
rakenduse valmides välja, et nendes seadmetes, kus puudus digitaalne kompass, ei töötanud
ka kompassi moodul. Digitaalse kompassi olemasolul mooduli töötamisega probleeme ei
esinenud. Teiste rakenduse töötamiseks vajalike moodulite puhul tõrkeid ei tekkinud, kõik
toimis testitavates nutitelefonides kui ka tahvelarvutites takistusteta.
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 28
Keijo Koort
Diplomitöö käigus valminud rakendus installeeritakse esimesel aastal Abja Spordi- ja
Tervisekeskusest ratta laenutanu nutiseadmesse inimese nõusolekul. Soovi korral on
kohapealt võimalus laenutada eelseadistatud rakendusega tahvelarvuteid. Pärast rakenduse
kasutamist kogutakse tagasisidet programmi töötamise, kasutusmugavuse ja informatiivsuse
kohta. Tagasiside põhjal viiakse sisse parandused ja valmistatakse ette rakenduse
üleslaadimine Google Play äppide nimekirja, kust kõigil Android operatsioonisüsteemil
töötavate nutiseadmete omanikel on võimalus see alla laadida.
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 29
Keijo Koort
ALLIKAD
App Inventor. (s.a. a). Designer and Blocks Editor. [2017, märts 09]
http://appinventor.mit.edu/explore/designer-blocks.html
App Inventor. (s.a. b). Setting Up App Inventor. [2017, märts 09]
http://appinventor.mit.edu/explore/ai2/setup.html
Blockly. (s.a. a). Blockly for Web. [2017, mai 01]
https://developers.google.com/blockly/
Blockly. (s.a. b). Blockly's strengths and other options. [2017, mai 01]
https://developers.google.com/blockly/guides/overview
Clark, A. (2013). App Inventor launches second iteration. [2017, aprill 10]
http://news.mit.edu/2013/app-inventor-launches-second-iteration).
Code.org. (s.a.). Graph Paper Programming. [2017, aprill 02]
https://code.org/curriculum/course2/1/Teacher
Dehouck, R. (2015). The maturity of visual programming. [2017, mai 01].
http://www.craft.ai/blog/the-maturity-of-visual-programming/
Elisa. (2017). GfK uuring: Käesoleva aasta märtsis müüdi mobiiltelefone 11% võrra rohkem
kui veebruaris. [2017, aprill 28].
https://www.elisa.ee/et/elisast/organisatsioonist/elisa/uudised/2071/gfk-uuring-
kaesoleva-aasta-martsis-muudi-mobiiltelefone-11-vorra-rohkem-kui-veebruaris
Flowgorithm. (s.a.). [2017, aprill 02]
http://www.flowgorithm.org/
Gartner. (2017). Gartner Says Worldwide Sales of Smartphones Grew 7 Percent in the
Fourth Quarter of 2016. [2017, veebruar 22]
http://www.gartner.com/newsroom/id/3609817
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 30
Keijo Koort
Google Developers. (2014). Is Blockly related to the programming language Logo? [2017,
märts 20]
https://groups.google.com/forum/#!searchin/blockly/starlogo/blockly/eG2kQ5tyGp
M/_ETqcdxH1rsJ
Lego Mindstorms. (s.a.). Programming blocks in the EV3 software. [2017, veebruar 28]
https://www.lego.com/en-us/mindstorms/learn-to-program
Maloney, J., Resnick, M., Rusk, N., Silverman, B., & Eastmond, E. (2010). The scratch
programming language and environment. [2017, mai 12]
Marks, A. (2014) Blockly versus Scratch – an apology [2017, mai 12]
https://devschoolblog.wordpress.com/2014/09/24/blockly-versus-scratch-an-
apology/
Mereviki. (s.a). Asimuut. [2017, mai 02]
http://mereviki.vta.ee/mediawiki/index.php/Asimuut
MIT App Inventor 2. (s.a.). [2017, jaanuar 15]
http://ai2.appinventor.mit.edu/
Progetiiger. (s.a.). Scratch [2017, mai 12]
http://progetiiger.ee/tool/13
Raidsalu, T. (2009, juuli 18). President pani koduvalla kooli uuele õppehoonele nurgakivi.
Sakala
Scratch. (s.a.). About Scratch. [2017, mai 01]
https://scratch.mit.edu/about
Scratch Blocks. (2017). GitHub. [2017, mai 8]
https://github.com/llk/scratch-blocks
The App Inventor Team. (s.a.). About us. [2017, mai 01]
http://appinventor.mit.edu/explore/about-us.html
Androidi rakenduse loomine KOV matkarajal leitava info kuvamiseks kasutades MIT App Inventor 2
veebirakendust
Diplomitöö 2017
TLÜ Haapsalu Kolledž 31
Keijo Koort
Vilipõld, J., Anatoi, K. & Mironova, O. (2012). Rakenduste loomise ja programmeerimise
alused [PowePoint slides]. [2017, mai 12]
http://rlpa.ttu.ee/Rakenduste_loomise_ja_programmeerimise_alused_01.ppt
Viigimäe, M. (2008). Liikumine on tervise sõber. [2017, jaanuar 11]
http://www.valgamv.ee/web/doc/Tervis/MoonikaViigim%C3%A4e.pdf
Vikipeedia. (s.a.). GPS. [2017, mai 02]
https://et.wikipedia.org/wiki/GPS
Wikipedia. (s.a). QR code. [2017, mai 02]
https://en.wikipedia.org/wiki/QR_code
WordPress. (s.a.). About WordPress. [2017, mai 01]
https://wordpress.org/about/
LISA. VALMINUD RAKENDUSE TÖÖVOOG