Mobiel vogelspotten met Android

Mobiele telefoons worden steeds meer multi-functionele devices, Via applets/widgets kun je handige en leuke applicaties downloaden zodat je snel toegang hebt tot een dienst of informatie. Omdat het steeds belangrijker wordt om ook buiten je eigen website (relevant) aanwezig te zijn in de (digitale) omgeving van de klant (exploding) is dit een ontwikkeling die info.nl op de voet volgt. Android is een relatief nieuw platform voor dergelijke mobiele applicaties en om ervaring op te doen hebben we de afgelopen weken onze eerste applicatie voor de Android telefoon ontwikkeld: de Birdspotter.

De G1 (HTC) telefoon – ook wel bekend als de Google phone - is de eerste telefoon die het Android platform ondersteund en is sinds 30 januari 2009 in Nederland verkrijgbaar bij T-Mobile. Dit toestel biedt als ’unieke’ eigenschappen een kompas en GPS naast het gebruik van het Android platform (beoordeling interactie G1 telefoon). Er zijn al verschillende producenten van mobiele telefoons die ook toestellen hebben aangekondigd die het Android platform ondersteunen.

De vogelspot applicatie is bedoeld om enkele unieke eigenschappen van de G1 telefoon testen zoals het kompas en de GPS functionaliteit. Er is besloten om een applicatie te bouwen die de volgende use-cases ondersteunen:

  • Delen van een waarneming van een vogel;
  • Het waarnemen van een vogel;
  • Het bekijken van waarnemingen van andere;

Om deze use-cases technisch te kunnen realiseren is er voor een tweedelige architectuur gekozen: een webapplicatie die het mogelijk maakt om waarnemingen met andere te delen en een applicatie voor het Android platform om de waarnemingen te doen en weer te geven.

systemarchitecture

We hebben de Tomcat web-applicatie gerealiseerd met de volgende technieken:

Onderdeel Oplossing
Database MySQL
EAO JPA/Hibernate
Manager Spring 2.5
Application server Tomcat 5.5

Bij het ontwerp van de mobiele applicatie hebben we ons gericht op de volgende drie aspecten:

  • Interactie van de applicatie;
  • Grafische weergave;
  • Technische capaciteiten van de G1 telefoon;

Bij de interactie van de mobiele applicatie hebben we vooral gekeken naar applicaties die al op telefoon aanwezig zijn en het gedrag voor het starten en stoppen en het wisselen van de schermen overgenomen. Ook hebben we hier gekeken en rekening gehouden met de gevoeligheid van het touchscreen en het gebruik van de knoppen. Bij het grafisch ontwerp was vooral de kleur van de satelietkaarten van de Google maps weergaven die bepalend waren voor de keuzes zodat er een goed contrast hebben met de kaarten waar op weergegeven.

Grafisch ontwerp vogelspotter 
De technische capaciteiten waar we rekening mee moeten houden zijn de beperking van de hoeveelheid geheugen die beschikbaar is op de G1 telefoon; het aantal objecten wat wordt aangemaakt moet op een slimme manier worden beperkt. Dit is zoveel mogelijk voorkomen door gebruik te maken van het singleton pattern. Een ander aspect is de communicatie met de vogelspot api (webapplicatie) die ook op een efficiënte manier moet worden gedaan om de hoeveelheid dataverkeer te beperken. Dit is opgelost door een vogelgids op de telefoon te plaatsen bij installeren van de applicatie en de communicatie tussen de telefoon en de webapplicatie te doen via REST.

Om een Android applicatie te ontwikkelen heeft The Open Handset Alliance een SDK uitgebracht. Deze is gratis te downloaden van de Android developer website. Daarnaast wordt er ook een Eclipse plugin aangeboden. Deze maakt het mogelijk om applicaties die je hebt ontwikkeld direct vanuit de IDE in de emulator te laten draaien. Om zelf een Android applicatie te ontwikkelen moet vooral rekening worden gehouden dat de telefoon maar bepaalde capaciteiten heeft.

Screenshot

Het Android platform biedt de mogelijkheid om op een simpele java manier, complexe mobiele applicaties te maken die op verschillende toestellen kunnen draaien. Daarnaast is de prijs van het G1 toestel lager dan de prijs van de iPhone en zijn er veel verschillende toestellen van verschillende fabrikanten die het Android platform ondersteunen gepland. De kracht van applicaties die worden gebouwd zal liggen in het gebruik van al beschikbare api’s, en deze te verrijken met het gebruik van een mobiele applicatie. Goede voorbeelden hiervan zijn het tonen van te koop staande woningen op basis van je locatie of allergie informatie op basis van het scannen van een streepjescode met de telefooncamera.

Android is een initiatief van de The Open Handset Alliance en is het eerste open gratis mobiele platform. Dit mobiele platform biedt een besturingssysteem (linux 2.6 kernel), een middleware laag en enkele belangrijke applicaties. Om voor dit platform te ontwikkelen is er gekozen voor de Java taal (syntax) die wordt uitgevoerd door een speciaal gemaakte embedded virtuele machine. Het Android platform kan worden aangeboden als besturingssysteem voor verschillende merken en typen telefoons en maakt het mogelijk om applicaties uit te voeren die voor Android platform zijn ontwikkeld. Ook zijn fabrikanten van netbooks van plan om netbooks te leveren die gebruik maken van het Android platform. Daarnaast is het mogelijk om een Android applicatie van verschillende bronnen te downloaden en te installeren (indien je dit hebt toegestaan op het apparaat) op het mobiele apparaat en is mogelijk om zelf een application store te starten.

De applicatie is hier te downloaden.

2 Reacties op “Mobiel vogelspotten met Android”

  1. edwin zegt:

    gaaf. kan je mobile ook meteen vertellen welke (type) vogel het is als je je camera aanzet?

  2. Iskander zegt:

    Goed idee voor de volgende fase. Dat zou een mooi stukje beeldherkenning zijn… Of alle volgens moeten natuurlijk met RFID worden geringd ;-)

Laat een reactie achter