Android és un sistema operatiu basat el el nucli Linux dissenyat principalment per a dispositius mòbils i pantalles tàctils com smartphones o tablets. El sistema ha estat desenvolupat per Google i la Open Handset Alliance. Inicialment va ser creat per la companyia Android Inc, primer suportada finaciarament per Google i finalment comprada al 2005. Android es va presentar al 2007 conjuntament amb la Open Handset Alliance, un consorci d'empreses de maquinari, software i telecomunicacions.
Google allibera el codi d'Android com a codi lliure sota la llicència Apache License.El projecte Android Open Source Project (AOSP), liderat per google, s'encarrega del manteniment i el desenvolupament d'Android.
Android has a large community of developers writing applications ("apps") that extend the functionality of devices. Developers write primarily in a customized version of Java,[12] and apps can be downloaded from online stores such as Google Play (formerly Android Market), the app store run by Google, or third-party sites. In June 2012, there were more than 600,000 apps available for Android, and the estimated number of applications downloaded from Google Play was 20 billion.[13]
El primer dispositiu Android es va vendre al octubre de 2008, i cap a finals de 2010 va esdevenir la plataforma per a smortphones més venuda.
Android, Inc. fa ser fundada a Palo Alto, California, Estats Units a l'octubre de 2003 per Andy Rubin (cofundador de Danger),[19] Rich Miner (cofundador de Wildfire Communications), Nick Sears, i Chris White per tal de desenvolupar segons les pròpies paraules de Rubin:
"...smarter mobile devices that are more aware of its owner's location and preferences."
Google va adquirir Android el 17 d'agost de 2005 i la majoria de empleats claus de Android Inc es van mantenir a la empresa que pasava a dependre totalment de Google.
A Google un equip liderat per Rubin va desenvolupar un dispositiu mòbil basat en el kernel Linux.
El 5 de novembre de 2007 es va crear la Open Handset Alliance, un consorci d'empreses tecnològiques entre les quals està Google, fabricants de dispositius com HTC o Samsung, ISPs com Sprint, Nextel o T-Mobile, i fabricants de chipsets com Qualcomm o Texas Instruments. El seu objectiu és la creació d'estàndards oberts per a dispositius mòbils. El mateix dia es va presentar Android com el primer producte d'aquesta aliança.
El primer mòbil comercial que va utilitzar Android va ser el HTC Dream, alliberat el 22 d'octubre de 2008. A principis del 20120 Google va col·laborar amb HTC per llançar el seu propi mòbil el Nexus One. Al 2010 també es van llançar els mòbils de Samsung, Nexus S i al 2011 Galaxy Nexus.
TODO: http://eceansar.blogspot.com.es/2011/07/complete-history-of-android-successthe.html
Abans de l'alliberament de la versió Ice Cream Sandwich, el primer que calia tenir en compte respecte a les versions d'Android és si es tracta d'una Tauleta o d'un mòbil o smartphone:
Més endavant als diferents formats se'ls a anomenat Form Factors hi han aparegut form factors extres com:
Des de la versió Ice Cream Sandwich (alliberada a l'octubre de 2011) les dos variants de la plataforma s'han fusionat en una.
Fins a la data (--acacha (discussió) 15:51, 24 set 2012 (CEST)), l'última versió d'Android alliberada és la 4.1 amb el codename Jelly Bean que es centra en la velocitat i els gràfics alhora que s'alliberen noves apps com Google Beam, Google Now i una millor aplicació per a càmeres.
Consulteu:
Com consultar la vostra versió d'Android?
per tal de saber quin és el procediment per conèixer la vostra versió d'Android.
Com haureu observat els noms en codi (codenames) de les versions d'Android fan referència a noms de postres.
TODO: Penjar la imatge:![]()
Vegeu els paràmetres targetSDKversion i MinSdkVersion
Consulteu:
http://developer.android.com/about/dashboards/index.html
Per veure una distribució d'ús de les versions d'Android a data de setembre de 2012.
Recursos:
IMPORTANT: Despite its name, this element is used to specify the API Level, not the version number of the SDK (software development kit) or Android platform. The API Level is always a single integer. You cannot derive the API Level from its associated Android version number (for example, it is not the same as the major version or the sum of the major and minor versions).
API Level és un valor enter que identifica de forma única la revisió o versió del framework API de la plataforma Android.
La plataforma Android proveïx un framework API que les aplicacions poden utilitzar per interactuar amb el sistema operatiu Android. El framework API conté.
Cada nova versió d'Android pot incloure actualitzacions el framework API. Les actualitzacions es dissenyen de forma que una nova API sigui compatible amb les versions anteriors. Això provoca que la majoria de canvis siguin extres o afegits, que inclouen noves funcionalitats o funcionalitats millorades. Les parts antigues del API es marquen com a deprecated però no s'eliminen, indicant als desenvolupadors que es millor que no les utilitzin en noves aplicacions però mantenint la compatibilitat endarrere.
NOTA: en alguns casos comptats, parts de l'API són modificades o eliminades però no solen tenir rellevància per a la robustes i la seguretat de les aplicacions
La següent taula:
http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels
Mostra el API level suportat per cada versió d'Android.
Vegeu també:
Recursos:
La plataforma principal és:
També hi ha suport per a:
Vegeu també Android_i_seguretat#Arquitectura_de_seguretat
TODO: traduir:
Para empezar con el desarrollo de aplicaciones en Android es importante conocer cómo está estructurado este sistema operativo. A esto le llamamos arquitectura y en el caso de Android está formada por varias capas que facilitan al desarrollador la creación de aplicaciones. Además, esta distribución permite acceder a las capas más bajas mediante el uso de librerías para que así el desarrollador no tenga que programar a bajo nivel las funcionalidades necesarias para que una aplicación haga uso de los componentes de hardware de los teléfonos.
Cada una de las capas utiliza elementos de la capa inferior para realizar sus funciones, es por ello que a este tipo de arquitectura se le conoce también como pila. Para entender mejor, a continuación cito el diagrama de la arquitectura de Android tomada del sitio oficial de Android developers:
Explicamos ahora cada una de las capas iniciando de abajo hacia arriba.
El kernel también se encarga de gestionar los diferentes recursos del teléfono (energía, memoria, etc.) y del sistema operativo en sí: procesos, elementos de comunicación (networking), etc.
Entre las librerías incluidas habitualmente encontramos OpenGL (motor gráfico), Bibliotecas multimedia (formatos de audio, imagen y video), Webkit (navegador), SSL (cifrado de comunicaciones), FreeType (fuentes de texto), SQLite (base de datos), entre otras.
Como podemos ver, Android nos proporciona un entorno sumamente poderoso para que podamos programar aplicaciones que hagan cualquier cosa. Nada dentro de Android es inaccesible y podemos jugar siempre con las aplicaciones de nuestro teléfono para optimizar cualquier tarea.
El potencial de Android se sitúa en el control total que se le da al usuario para que haga de su teléfono un dispositivo a su medida.
File managers:
Gestors d'aplicacions
Consulteu Android i seguretat
TODO
ANR Dialog aka ANR. ANR són les inicials de:
Application Not Responding
Consulteu:
On podeu trobar un exemple de programació amb Sockets que peta si s'està amb el mode estricte activat.
Recursos:
NOTA: Prèviament cal instal·lar Virtual Box:
$ sudo apt-get install virtualbox-4.2
GenyMotion abans conegut com:
AndroVM
Per instal·lar cal registrar-se a la web de genymotion i descarregar el bin:
$ sudo chmod +x genymotion-1.3.0_x64.bin $ ./genymotion-1.3.0_x64.bin
I executeu:
$ cd ~/Baixades/genymotion $ ./genymotion $ ./genymotion-1.3.0_x64.bin Installing to folder /home/sergi/Baixades/genymotion. Are you sure [y/n] ? y - Trying to find VirtualBox toolset .................... WARNING (Virtualbox was not found in you PATH. Please install it manually) - Extracting files ..................................... OK (Extract into: /home/sergi/Baixades/genymotion) Installation done successfully. You can now use these tools from /home/sergi/Baixades/genymotion: - genymotion - genymotion-shell
Les AVD es guarden al cloud amb el vostre compte genymotion. És una eina for Dummies,per que un cop executada la màquina virtual fins i tot executa el adb connect:
$ adb devices List of devices attached 192.168.56.101:5555 device
I configura xarxa:
$ ifconfig vboxnet0 vboxnet0 Link encap:Ethernet direcciónHW 0a:00:27:00:00:00 Direc. inet:192.168.56.1 Difus.:192.168.56.255 Másc:255.255.255.0 Dirección inet6: fe80::800:27ff:fe00:0/64 Alcance:Enlace ACTIVO DIFUSIÓN FUNCIONANDO MULTICAST MTU:1500 Métrica:1 Paquetes RX:0 errores:0 perdidos:0 overruns:0 frame:0 Paquetes TX:69 errores:0 perdidos:0 overruns:0 carrier:0 colisiones:0 long.colaTX:1000 Bytes RX:0 (0.0 B) TX bytes:14116 (14.1 KB)
Que no funciona:
Si tu aplicacion requiere de alguna de esas cosas, tendras que descartar esta herramienta de entrada. :(
Si has llegado hasta este punto es seguro que te he convencido (a pesar de los puntos flacos que tiene) de darle una oportunidad a esta herramienta, entonces no te detengas ahora, aprende como instalarlo, configurarlo y dejarlo listo como parte de tu ambiente de desarrollo.
Recursos:
Aneu a:
http://androvm.org/blog/download/
Baixeu el fitxer:
http://androvm.org/Download/androVM_vbox86tp_4.1.1_r6.1-20130222-gapps-houdini-flash.ova
TODO: Com fer adb connect
Importeu la Ova al Virtual Box
Recursos:
Introducció
Aquesta part és possiblement la més avorrida, ja que és la més teòrica, però és important. Està orientada als usuaris que no tenen coneixements en la instal·lació de Android en un dispositiu mòbil. Si ja tens coneixement amb la primera instal·lació i estàs familiaritzat amb el SO, pots saltar-te el següent punt.
Ràpid repàs de Android
Pas a Pas
El primer que veiem quan obrim el nostre nou dispositiu es la pantalla de benvinguda on hem de triar el nostre idioma, i posteriorment vincular el nostre compte de gmail.
En aquesta pantalla triem que SI per poder vincular el nostre dispositiu al el gmail amb uns senzills passos.
Introduïm el nostre ocmpte de Google i la contrasenya.
En el cas de que no tinguem compte o ens hem equivocat amb algun dels camps anteriors ens avisara i haurem de tornar a completar-los.
Un cop comprovats els camps seguim amb la vinculació.
Ara ens ofereix restaurar el nostre compte de Google al nou dispositiu i crear una nova copia de seguretat per si en algun cas tenim un problema i no podem recuperar els arxius.
Utilitzar la ubicació de Google per a poder controlar on estas connectat de forma anònima des de Google.
Per finalitzar introduïm la hora i data correctes segons on estem ubicats, que normalment ja estan correctes per defecte, però tot i així ho hem de comprovar.
Ja hem finalitzat la nostra instal·lació i podem començar a utilitzar el nostre nou Android.
Un cop estem dintre del Android podem veure els ultims petits conçells per mourens mes rapidament dintre del nostre dispositiu i algunes captures de la pantalla.
Es pot obtenir una màquina virtual preconfigurada amb Android per a virtual Box a vmlite:
http://www.vmlite.com/index.php?option=com_content&view=article&id=68:android&catid=17:vmlitenewsrotator
Executeu:
$ cd && mkdir vmlite_android && cd vmlite_android $ sudo apt-get install p7zip $ wget http://www.vmlite.com/vmlite/VMLite-Android-v4.0.4.7z $ p7zip -d VMLite-Android-v4.0.4.7z
Ara entreu a la carpeta amb l'entorn gràfic:
$ nautilus VMLite-Android-v4.0.4
I feu clic a:
VMLite-Android-v4.0.4.vbox
I us instal·larà la màquina Android a VIrtual Box.
Si us dona l'error del USB i us demana instal·lar:
Oracle VM VirtualBox Extension Pack
Vegeu Virtual Box:
Vegeu Desenvolupament Android