Trafikanten på Android: noen ord fra utvikleren
Nå som katta er sluppet ut av sekken og Trafikanten for Android er sluppet er det vel på tide å dele mine erfaringer med utvikling for Android.
Siden jeg skaffet meg en dev phone like før jul har jeg i ledige stunder puslet med det nærmeste jeg kommer et “Hello World”-prosjekt: Trafikanten. Jeg tok utgangspunkt i Trafikanten på iPhone og hadde som mål å få noe som ligner så mye som mulig til å kjøre på min Android-telefon.
Først installerte jeg Eclipse, siden Google lager plugins som gjør Android-utvikling mye enklere enn å gjøre alt for hånd. Til å begynne med forsto jeg ikke allverden av hva som foregikk under panseret, men fant meg på sett og vis til rette i Eclipse – selv om det sammenlignet med XCode er et monster. De helt grunnleggende funksjonene i Eclipse, så som å skrive tekst, er en merkelig involvert prosess, og det tok ikke lang tid før jeg savnet Textmate. Etterhvert har jeg forstått at man kan få til det samme i andre editorer som man gjør i Eclipse, de aller fleste funksjonene er dekket av verktøy som følger med Android SDK-et. Neste Android-applikasjon kommer jeg nok til å utvikle i Emacs, og bygge meg en Rakefile som automatiserer bygging, debugging, signering og slikt.
Gjensynet med java var ikke den beste delen av opplevelsen, men rammeverkene fra Google er veldig bra. Spesielt er arkitekturen i Android gjennomtenkt og bygget for at man enkelt kan lage mashups som trekker funksjonalitet fra andre applikasjoner på telefonen. Applikasjoner kan være tilbydere (provider) av data overfor andre applikasjoner, som gjennom REST-baserte URLer får tilgang til data fra din applikasjon. Android legger heller ingen begrensninger for hvor dypt ned i operativsystemet man dukker; din applikasjon kan gjerne være en erstatning for SMS-applikasjonen dersom brukeren ønsker å heller bruke din SMS-applikasjon enn den som følger med operativsystemet.
Vi ble enige om å distribuere kildekoden til applikasjonen på Gitorious, og gjorde det igår. Det føltes da pussig å ikke skulle distribuere applikasjonen også, så jeg satte meg til og forsket på hva som skal til for å få en applikasjon på Android Market. Også her har Google valgt en helt annen tilnærming enn Apple: man generer sitt eget private/public keypair som man bruker til å signere applikasjonen – det er altså ingen søknadsprosess til Google for å bli godkjent som utvikler. Man må riktignok registrere seg – noe som koster 25 dollar – men hele denne prosessen er automatisert.
Når jeg så hadde laget og signert en versjon av applikasjonen (som tok i underkant av en halvtime, inkludert lesning av dokumentasjon) gikk jeg inn på Android Market og bladde meg fram til .apk-fila jeg hadde laget og signert. Nettsida ga umiddelbart informasjon om at jeg trengte etpar ekstra tagger i manifest-fila mi (som angir miniumsversjon av SDK-et), og så snart dette var rettet fikk jeg beskjed om at applikasjonen nå var publisert.

Dette tok meg rett og slett på senga, jeg hadde regnet med noen dager eller uker med godkjenning før appen var tilgjengelig. I morges hadde jeg bestemt meg for å ta appen bort – siden jeg ikke følte den var ferdig ennå – men kunne se at et femtitalls brukere allerede hadde installert applikasjonen. Jeg la derfor heller inn beskjed om at appen ikke er ferdig, og lovet å komme med oppdateringer.
Om du har en Android-telefon skal du kunne scanne denne strekkoden for å installere Trafikanten på telefonen din:

Henger dessverre når jeg velger en holdeplass for å se overganger (HTC Magic, Android 1.5) ... Kjører fint i Android 1.1 i SDKet, på 1.5 starter den ikke. Hvor kan jeg rapportere bugs? :)
av Vetle, 24/06-2009
@Vetle: Inntil videre er det helt fett å rapportere bugs her. Kikker på det imorra!
av Marius Mathiesen, 25/06-2009
Flott tiltak Marius :) Ser det trengs litt jobb med posisjoneringen din. Har en løsning som er mye bedre enn å bruke gps, nemlig via GSM mastene som burde være tilstrekkelig for å finne de nærmeste holde plassene… Titter litt på kildekoden din jeg, så kan jeg komme tilbake med forbedringer senere… Sjekk YR widgeten min, så skjønner du hva jeg mener :)
av Øystein, 25/06-2009
Ser ut som sammenlagt reisetid viser en time for mye? Ellers helt supert at app’en er lagt ut allerede, release early, release often! Har hatt min HTC Magic i to dager og koser meg som en unge. Når feriestresset er over blir vel dette en fin intro til android-utvikling for meg :-)
av Martin Solaas, 25/06-2009
@Martin: Mistenker at du har lasta inn “den andre” Trafikanten-appen, det finnes nemlig to. Har snakket med Anders Agaard, som har laget den andre, forhåpentligvis kommer vi til å kunne samarbeide om features framover. Anders’ Trafikanten har reiseplanlegger, noe vår/min ikke har.
@Øystein: takk for kjempeflott patch – har lagt ut versjon 1.0.1 med GSM-posisjonering istedet for GPS. Skikkelig gøy om dette prosjektet kan bli et fellesskapsprosjekt!
av Marius, 26/06-2009
Er det mulig at denne ikke funker på Tattoo (på grunn av skjermoppløsningen?) Finner den ikke i market med en tattoo i alle fall. Tester litt mer, og kommer evt. tilbake med mer info.
av Ola Thoresen, 11/01-2010
Jeg har nå endelig funnet trafikanten til min HTC Tattoo, men jeg får ikke søkefunksjonen til å virke. Jeg får opp linjen jeg kan skrive inn søkestedet på, men det er ingen knapp for å “aktivere” søket. Jeg lastet ned oppdatering i dag, men knappen manglet fortsatt. Ellers vil jeg si at trafikanten antagelig vil være en av funkjsonene jeg kommer til å bruke mest! Fantastisk at denne applikasjonen er kommet til Tattoo også :-)
av Siri, 24/01-2010
Veldig bra å få denne appen til Tattoo! Awesome!
@Siri: Bruk return/enter-knappen på tastaturet, så gjennomføres søket :)
av Øyvind, 25/01-2010
Hei. Jeg har en HTC HD2, skjønner ikke hvordan jeg skal få til å laste ned forskjellige applications. Hvordan gjør jeg dette? Fantastisk tiltak dette her, stå på! :)
av Halvor, 31/01-2010
@øyvind: Return/enter hjelper fint lite. Feltet blinker grønt, men det skjer ingen verdens ting. Ingen andre knapper heller, som jeg nå har trippelsjekket for å være helt sikker…
av Siri, 02/02-2010
Utrolig bra app!
En funksjon jeg hadde digga: - Neste t-bane/trikk/buss som går hjem. f.eks ved at man registrerer hjem-holdeplass. Så kan den automatisk sjekke lokasjon og vise tidspunkt for nærmeste transport hjem.
Kunne også vært genialt som widget.
av Andre E. Eide, 10/02-2010
Har funker det å scanne med en ericsson vivas pro. Skjønner ikke helt hvordan det skal gjøres. Noen som kan forklare det…... enyone?
av Anonym, 14/04-2011