Tekkis vajadus kirjutada Androidi app. Pmst lihtne app: paar seadet määrata, kuulata GPS datat ning saata seda infot regulaarselt üle võrgu. Ja töötada taustal kui vaja. Tõmbasin hommikul Androidi SDK … see võtab algatuseks pildi suht kirjuks, aga kui kasutada Eclipset, siis toimib, kui kõik puzzle tükid kokku saad, väga muretult. Täiesti võrreldavalt iPhone + XCode arendusega sellest küljest.
Kuna ma polnud ühtegi Androidi telefoni enne rohkem kasutanud kui mingi 5min näppimist kellegi käest, siis oligi kõige tundmatum maa see, et kuidas see värk sisemiselt üles on ehitatud. Etterutates – sellega sai ka üks arhitektuuriline jura sisse tehtud ja ära parandatud. Aga jah, lihtne app, ~10h oli app üldjoontes valmis:
Ammu polnud javat kirjutanud, natuke läks sellega ka aega, aga muidu nagu java devel ikka. Androidi SDK dokumentatsioon on ka korralik. Kuid nagu ikka – kui asi peab minema avalikuks kasutuseks, siis viimane 10% tööd võtab veel vähemalt sama palju aega: esiteks tuli välja üks arhitektuurijama seoses Androidi-spetsiifilise Activity ja Service kasutamisega. See osa tuli ringi kirjutada, et asi korrektselt backgroundis jookseks. Lisaks veel see, et kui telefon läheb magama (ekraan mustaks), siis lülitatakse WIFI välja ja üle võrgu saatmine hakkab toimuma kasutajale märkamatult üle GSM võrgu (see on minu meelest küsitav lahendus Androidil). Aga muus osas oli suht pisinokitsemine ning teise päeva ööseks oli see asi valmis ja laivis: Pinmarks.me for Android, v1.0
Kui muidu on iPhone arendus XCodega mäki peal täiesti mõnus, siis asi, millega Androidi ADT (developer toolkit) iPhone arendusele suht pika puuga ära paneb, on reaalse devicega suhtlemine ja sinna install. iPhonel on vaja algatuseks (ametlikult) Apple devel accounti ($99/aastas) ning eraldi kompileerida/signeerida. ADT’l on kompileerimise tulemuseks esiteks sama binary, mis emulaatoriski ehk siis ei pea midagi eraldi kompileerima telefonile deployimiseks ning teiseks pole erilist kammi mingi “ametliku” signeerimisega (seda siis juhul kui Android Marketisse ei taha oma programmi vist, seda osa pole uurinud veel). Ning vähemalt mäki peal käib otse telefonis programmi jooksutamine ja debugimine selliselt, et torkad asja lihtsalt USB kaabliga telefoni taha ning lülitad telefonis “USB debugging” sisse. Ma ei ole kindel, et enam lihtsamalt saaks … ilmselt otse üle õhu oleks veel lihtsam, aga see selleks 🙂
(innustununa postitusest objektiivne tsee)
tulevikus võiks saada ka näha telefoni pealt mis sõbrad teevad 🙂