Työskentelen tällä
hetkellä Android kehittäjänä ja applikaatio, jota olen tekemässä,
alkaa olla kohta valmis. Viimeistelen ohjelman layouttia ja mieleeni
palasi unohtumattomat kokemukset LoanMoaner Meego-ohjelmasta.
Osallistuimme opiskelukaverini kanssa Cybercomin järjestämään
koodauskilpailuun, jossa tarkoituksen oli käyttää Qt:tä joko
kännykkä tai työpöytäohjeman tekemisessä.
Käytimme QML:ää
käyttöliittymän tekemisessä ja C++ tietokantajutuissa ja Googlen
kalenterisynkkauksessa. Samoin kuten nyt Androidissa, kumpikaan ei
ollut käyttänyt käyttöjärjestelmää missään laitteessa ja N9
oli vasta muutaman kuukauden vanha. Emme oikeastaan etukäteen
tienneen millaista käyttökokemusta laitteelle haetaan. Itse
Meegosta ei ollut muutenkaan paljon tietoa ja silloin pidimme vielä
itsestään selvänä että myös uusia Meego puhelimia on tulossa
mahdollisesti eri resoluutioilla.
Käyttöliittymän
tekeminen on helppoa QML:llä. QML layoutin muodostus muistuttaa
Androidin ja WP:n XML määrittelyä. Komponentit ankkuroidaan aina
suhteessa toisiinsa ja Qt Creatorin wysiwyg editori auttoi ainakin
opetteluvaiheessa. Qt creator oli kehitystyökaluna hieman
kehittymätön ja vuosi muistia aika pahasti kaverini koneella.
Loppuraportissa lukeekin että "Qt Creator toimii hyvin silloin
kun se ei kaatunut".
Väänsimme ohjelman
kasaan luottaen pelkkään emulaattoriin noin kahdessa viikossa. Kun
lopulta saimme testipuhelimen, törmäsimme muutamaan siinä
vaiheessa lohduttomalta tuntuvaan ongelmaan. Ohjelma näkyi
simulaattorissa oikein, mutta puhelimessa näkyi vain musta ruutu kun
sovelluksen käynnisti. Tämän ongelman parissa vierähti ainakin
puolitoista päivää. Lopulta paljastui, että QML-ikkunan eli
sovelluksen käyttöliittymän lataamiseen on käytettävä vain
tiettyä yhtä funktiota. Käytimme tietysti sitä toista tapaa joka
toimii emulaattorissa, muttei kuitenkaan oikeasti kännykässä.
Hassua oli myös näytön
korkeuden ja leveyden käsittely. Emulaattorissa näytön korkeus ja
leveys menee intuitiivisesti eli kapeampi sivu on leveys ja korkeampi
korkeus. Laitteessa (N9) ajettaessa kuitenkin leveys ja korkeus ovat
toisinpäin kun laitteelta pyydetään näytön leveys ja korkeus.
Jos Nokia olisi jatkanut
Meego käyttöjärjestelmän käyttöä, kehitysympäristöön olisi
tarvinnut pikaisesti parannuksia, jotka houkuttelisivat lisää
kehittäjiä. Qt sinänsä on erinomainen ja ytimekäs kirjasto
käyttöliittymien suunnitteluun, mutta sen käyttö kännykässä
sisälsi joitakin aika käsittämättömiä bugeja. Olisi ollut myös
kivaa jos emulaattori olisi vastannut tarkemmin oikean puhelimen
toimintaa. Toisaalta en ole vuoteen ladannut uutta versiota Qt creatorista, joten tilanne voi olla nyt parempi.
Comments
Post a Comment