Disposició dels elements visuals de les interfícies d’Android

Per dissenyar interfícies d’Android has de fer-ho amb un llenguatge XML que s’han inventat aquests de Google. A diferència per exemple de com ho fas a l’iPhone on ho fas, o bé amb un editor visual (estil Glade), o bé directament des del codi. Amb l’Android pots fer-ho de dues maneres1: o bé ho fas per codi, o ho fas amb el llenguatge aquest que comentava.

El fet és que com que és un XML hi pots treballar sense que t’hagis de tallar les venes, ja que entre altres coses et deixa separar tot el que és el estils del que és la declaració pròpiament dita de la interfície (molt a l’estil XHTML i CSS perquè ens entenguem).

Tot i així tampoc no és la panacea de l’edició d’interfícies, ja que si bé és molt senzill (i com a programador molt més amigable) poder treballar directament amb l’XML, el fet que l’Android estigui pensat per a una gran varietat de formats de sortida2 complia en certa manera com disposes els elements.

Per sort hi ha molta gent que escriu sobre com fer aquelles coses que se t’escapen a simple vista i avui he trobat un parell de blocs que valen molt la pena:

  1. En realitat són tres, també hi ha un editor visual, però és menys que un mal intent de crear un editor d’interfícies []
  2. Des de pantalles de 2,5″ fins a pantalles de 10″ o més []

Fonaments d’Android

Aquests dies estic començant a mirar-me tot el tema d’Android i per sort meva tenen un document, que per a mi, és molt important: Application Fundamentals.

Allà no t’explica cap truc per fer que la teva aplicació sigui perfecta, ni tan sols t’explica com l’has d’estructurar, però en canvi et vomita totes les paraulotes de la terminologia que es fa servir a Android. Per exemple: no fas crides a classes per crear una nova pantalla, sinó que fas un Intent. Totes les necessitats de hardware i software externs al teu projecte han d’estar escrits en un fitxer xml…

Evidentment llegint això no serveix per crear aplicacions, però sense llegir-ho ho passaràs força malament :)

Alguns consells sobre què més llegir o quines pàgines consultar per quan hi hagin dubtes sobre Android?

N900, iPhone, Nexus One i càmera

A la imatge podeu veure a dalt a l’esquerra la Nokia N900, a sota l’iPhone d’Apple1  i finalment a la dreta el Nexus One de Google. Evidentment la càmera és amb la que he fet la foto, una Sony DSCHX5VB si m’ho pregunteu, té GPS, grava vídeo en HD, compensa el moviment, etc etc etc.

A la feina estem fent una aplicació per a l’iPhone2 i l’Android, de manera que necessitem els terminals per fer les proves de camp (treballar dades del GPS és un mal de cap, per sort però ja està tot arreglat :D

La Nokia N900 va caure ben bé per sorpresa. Després d’anar al Maemo Barcelona Long Weekend i d’intercanviar correus amb gent de Nokia ens en van enviar un :)

iPhone

Nota prèvia: La valoració dels 3 aparells no serà molt igualada ja que només amb l’iPhone i tenim el pla de dades, de manera que és el que més utilitzo de camí cap a la feina i en general.

En general funciona prou bé pel hardware amb què està fet (si el comparem amb els altres dos), evidentment a costa de no ser multi-tasking3.

La navegació per Internet és prou correcta i en general la interfície respon prou ràpid4.

Lo pitjor: la càmera … no m’estranya que amb la pròxima suposada versió del hardware hi posin una càmera molt millor, ja que la que hi ha ara és pèssima!

Nokia N900

Destaquen dues coses, una bona i una de dolenta (també per segons qui, clar) a primer cop d’ull: el teclat físic i les mides (és gairebé el doble de gruixut que els altres dos).

Un cop t’acostumes a les pantalles tàctils de l’iPhone i l’Android, la pantalla de la N900 et sembla tosca, però tot i així també t’hi acabes acostumant5.

Tot i així, té molt mèrit haver arribat a fer un mòbil tant i tant ben fet com és la N900 si partim de la base que és un “Debian modificat” i que el desenvolupament, en bona part, s’ha fet en obert, amb moltes empreses col·laborant en obert, etc etc

La fusió dels projectes Moblin i Maemo que ha resultat en el MeeGo només pot portar beneficis (la primera de totes, la interfície basada en Clutter) i se suposa que a finals d’aquest mateix any ja en veurem el primer mòbil (si Nokia no ha canviat els plans que tenia abans de la fusió clar).

En conclusió: està en un clar pas enrere que els altres dos, però amb una base prou sòlida i potent com perquè tot sigui qüestió de temps que sigui un gran producte.

Nexus One

És amb el que he pogut jugar menys de tots, m’atabala MOLT el fons de pantalla amb els bits de colorets movent-se, per sort es pot canviar :)

És un entremig entre l’iPhone i la N900, ja que si bé no té un teclat sencer com la N900, sí que té més d’un “botó” que l’iPhone, els quals són força còmodes un cop t’hi acostumes.

Té una espècie de persiana per les notificacions que està prou bé.

Això sí, evidentment al ser el Nexus One, ja des des de la primera pantalla de configuració en l’auxiliar inicial t’avisen que sense un compte de Google no podràs fer pràcticament res i, almenys a mi, no m’agrada gens… amb l’iPhone també has de donar les teves dades, però almenys són unes dades que pots posar les que vulguis i no tenen cap manera fàcil de relacionar-ho amb altres dades personals, però aquí al ser un compte de Google ja t’enllaça els contactes, el correu i tot el que tingueu a Google. Molt útil si ho teniu tot allà i un merder si no hi teniu pràcticament res i no voleu haver de tenir-ho allà6.

No l’he explorat molt però està prou bé com a producte final, la gràcia d’Android és que com que hi ha força empreses que hi treballen s’avança prou ràpid el desenvolupament, haig de ficar-me més en les tripes del sistema operatiu tot i així per poder-ho valorar millor.

Ja els heu pogut provar? Què n’opineu vosaltres?

  1. I sí, ja el tinc en “català del TERMCAT” … []
  2. De fet ja hi ha una primera versió penjada a l’App Store, busqueu gastroteca.cat ;) []
  3. I el multitasking del iPhone OS 4 … bé no és exactament el que se’n diria multi-tasking purament dit, però com que en fa l’efecte la gent ja s’ho pren com a tal []
  4. Tot i que ara que faig servir l’iPhone OS 4 peta més que una escopeta de fires :D []
  5. Al cap i a la fi els mateixos de Nokia qualifiquen la N900 com un mòbil per a early adopters, quan els altres dos són, sense cap dubte, productes per a usuaris finals []
  6. M’he passat més de mitja hora per poder passar els contactes de la N900 als contactes de Google … []

Instal·lar l’SDK (i tot el necessari) per desenvolupar per Android

Avui m’he posat a instal·lar tot el necessari per començar a desenvolupar sobre Android1 i com que s’ha d’instal·lar unes quantes coses, és aquí una llista ràpida sobre què i en quin moment:

  • Instal·leu el Java JDK6
  • Instal·leu l’Eclipse 3.5
  • Baixeu i instal·leu l’SDK de l’Android
  • Instal·lar el connector ADT per l’Eclipse i configureu-lo

Amb això i seguint les notes d’inici ràpid del lloc de desenvolupadors d’Android ja podreu començar a crear projectes i programar :)

  1. Consells, enllaços i tot el que us sembli que em pugui ajudar és benvingut! []

per mòbils??

Es veu que Google acaba d’alliberar del tot la plataforma Android.

Me’n vaig a la pàgina de baixades i em trobo amb això:

The source is approximentely 2.1GB in size.  You will need 6GB free to complete the build.

La negreta és meva.

Se suposa que la plataforma Android es per construir aplicacions i sistemes per a plataformes mòbils, altrament dit, per a mòbils amb molts pocs recursos comparats amb el que seria un portàtil o un ordinador de treball normal.

Ja en temes més interessants, a la secció de layout l’apartat de proveïdors:

DrmProvider

mmmmmh, m’agradarà veure què hi ha d’open-source aquí, o si senzillament és un contingut buit però apunt per filtrar tot el que faci falta i més :(