Tagandroid

Julkiset 0.2 Android-mobiilisovellus

Julkiset on pk-seudun julkiseenliikenteeseen suunnattu mobiilipalvelu, joka toimii reittioppaan tavoin. Julkiset -sovelluksen uutena ominaisuutena on pysäkkihälytys. Julkiset-sovelluksen kehittymistä voit seurata tästä blogista tai lataamalla sovelluksen Google Play:stä.

Sovelluksen kehittäminen aloitettiin 1.12. jolloin lähdin listaamaan sovelluksessa tarvittavat toiminnot. Samalla harjoittelin myös OpenLayersin käyttöä, ja kokeilin kuinka se istuu kännykän näytölle. Tein myös muita pienempiä projekteja OpenLayersin kanssa, ja julkaisin siitä muutaman myös tänne luettavaksi.

5.12-9.12. Aloin kokoamaan osia yhteen, ja hakemaan kaikkia toimintoja. Ongelmitta ei myöskään selvitty. Ensinä heti tuli esille, etten koneeltani saanut haetuksi reittioppaan API:sta mitään. Ongelman syyksi myöhemmin selvisi Same Origin Policy, joka estää käyttäjän tehdä cross-domain pyyntöjä. PhoneGap:llä Same Policy Origin salli oletuksena kaikki yhteydet, ja niitä pystyi myös helposti hallinnoimaan whitelist:stä. Sain kuitenkin lokaalisti firefoxilla haettua dataa normaalisti, ja näin pystyttiin jatkamaan debuggaamista tietokoneelta käsin.

10.12-13.12. Aloin keskittymään hieman ulkoasuun, jotta saisin 13.12. järjestettävään sovelluksien demo-tilaisuuteen toimivan ja näyttökelpoisen version valmiiksi. Valitsin ulkoasuksi jQueryMobilen, jolla saa helposti hienoja kännykkäkäyttöliittymiä tehdyksi. Ongelmaksi kuitenkin piakkoin astui yhteensopivuus ongelma OpenLayersin kanssa. Löysin pitkän etsinnän jälkeen jonkin näköisen fiksin, kuinka tämän sai korjatuksi.

14.12-16.12. Jatkoin kehittämistä, jotta saisin sunnuntaille version jonka saisin julkaistua Google Play:hin, ja palautettua sen Terolle mobiilituotekehitys kurssin pitäjälle. Paikannuksessa tuli jotain hämäriä ongelmia, etten saanut käyttäjän sen hetkistä sijaintia millään selvitettyä. Jouduin ensimmäiseen beta-version näin ollen julkaisemaan ilman pysäkkihälytystä. Kehitys jatkuu ensi viikolla, jolloin tavoitteena on saada toimiva kunnon versio jakeluun.

Nimi: Julkiset
Kuvaus: Julkiset on pk-seudun julkiseen liikenteeseen suunnattu mobiilipalvelu, joka toimii reittioppaan tavoin. Julkiset -sovelluksen uutena ominaisuutena on pysäkkihälytys (ei toiminnassa vielä beta-vaiheessa).
Status: beta
Asennuspaketti: http://nikokiuru.com/apk/julkiset20.apk
Lähdekoodit: https://github.com/kiuru/Julkiset
Google Play: https://play.google.com/store/apps/details?id=com.nikokiuru.julkiset
Tekinen toteutus: Sovellus hakee reittitiedot hsl:n reittiopas api:sta, ja tulostaa eri välipysäkit kartalle. Ohjelma käyttää hyväkseen OpenLayerssiä, joka tulostaa näytölle OpenStreetMapin. Ulkoasu on toteutettu jQueryMobilella.
Ruutukaappaus:

Screenshot_2012-12-16-19-23-33:Screenshot_2012-12-16-19-23-53 Screenshot_2012-12-16-19-24-37 Screenshot_2012-12-16-19-24-47

Minun ensimmäinen PhoneGap Android-ohjelma

Aloitin Tero Karvisen vetämän mobiilituotekehitys kurssin (Kurssin sivut), jossa harjoittelemme PhonenGapin käyttöä ja applicaatioiden tekemistä mobiililaitteille. Ensimmäisen viikon tehtäväksi saimme tehdä omavalintaisen ensimmäisen ohjelman. Ensimmäinen ohjelma tietty oli Hello World, jonka tekemiseen löytyvät ohjeet Teron kotisivuilta: http://terokarvinen.com/2012/hello-phonegap-from-xubuntu-12-04-live-cd.

Hello Worldin lisäksi kokeilin vielä kuinka näppärästi OpenStreetMapin sai näytetyksi kännykän näytölle. Alkuperänen tarkoitus oli rakentaa ohjelma, joka hyväksikäyttää TieInfon json-rajapintaa, josta olisin saanut koko Suomen kattavan sää mittauspisteiden datat. Kuitenkin monien yritysten jälkeen en saanut jostain syystä javascriptillä haettua yhtikäs mitään dataa. Ongelma ei vielä ehtinyt ratketa, mutta tulen myöhemmin päivittämään mistä se jäi kiinni.

Mutta itse OpenStreetMap ohjelman tekoon. Aluksi sinun tarvitsee hakea OpenLayer.js -kirjasto osoitteesta: http://openlayers.org/download/OpenLayers-2.12.tar.gz ja viedä se assets/www/OpenLayers-2.12 -hakemistoon. Seuraavaksi lisäät seuraavan koodin index.html.

<!DOCTYPE HTML>
<title>OpenLayers Simplest Example</title>
<div id="demoMap" style="height:250px"></div>
<script type="text/javascript" src="OpenLayers-2.12/OpenLayers.js">
<script>
    map = new OpenLayers.Map("demoMap");
    map.addLayer(new OpenLayers.Layer.OSM());
    map.zoomToMaxExtent();
</script>

Seuraavaksi voit ajaa koodin ja sinulle generoituu valmis ohjelma, joka näyttää vain OpenStreetMapin. Ohjelmaan olisi hyvin voinut lisätä vielä paikannuksen, mutta sisäoloissa en joko saanut kännykälläni gps yhteyttä taikka se ei muuten vain pelittänyt. Kokeillaan myöhemmin uudemman kerran.

Nimi: Kartta
Kuvaus: Ohjelma näyttää OpenStreetMapin
Status: alpha
Lisenssi: GPL v2
Asennuspaketti: http://myy.haaga-helia.fi/~a1102088/mobiilituotekehitys/Kartta.apk
Lähdekoodit: Näkyvissä ylhäällä
Tekinen toteutus: Ohjelma avaa OpenLayerin, joka näyttää OpenStreetMap:n kartan.

© 2017 Niko Kiuru

Theme by Anders NorenUp ↑