Android está repleto de cientos de términos y conceptos técnicos (Pueden haber fácilmente más de 9000), así que para comenzar con la introducción, definimos 3 niveles imaginarios en las que se utilizaron sus siglas: HAL.
Hardware: Los componentes físicos del dispositivo.
Android: La base del dispositivo: El sistema operativo.
Launcher: Interfaz gráfica con la que manejamos el dispositivo.
Nivel 1: Hardware
El hardware es la parte física del dispositivo. En Android es muy importante conocer las características del dispositivo a adquirir. Pero es aún más importante tener una lista de prioridades altas (procesador, memoria RAM, tamaño de la pantalla, etc...) y una lista de prioridades bajas (resolución de la cámara, mAh de la batería, marca...).
Esta lista será muy subjetiva. Existirán personas que utilicen muy frecuentemente su cámara porque son fotógrafos, viajan frecuentemente o la utilizan mucho (prioridad alta) y personas que apenas ni la usen (prioridad baja).
Nivel 2: Android
Un error muy extendido (al menos entre iniciados) es el de ver Android como un dispositivo móvil, y no como lo que es: un sistema operativo (y de código abierto). Cualquier empresa puede crear un móvil y utilizar Android en él.
Pasa al contrario, por ejemplo, con iPhone, que si es un dispositivo móvil (su sistema operativo es iOS, y es propiedad de Apple).
Al ser un sistema operativo, cada dispositivo Android dispondrá de una versión concreta instalada (de forma análoga a, por ejemplo Windows con Win98, WinXP, Win7...) con características añadidas respecto a su versión previa. Estas distintas versiones las veremos más adelante.
La versión de Android de un dispositivo puede ser actualizada a una versión posterior. Para ello, el fabricante u operadora debe poner a disposición de sus usuarios la actualización correspondiente. Incluso miembros de la comunidad de un dispositivo suelen crear actualizaciones no oficiales.
Un problema que se extendió bastante en el pasado, es que las compañías lanzaban un terminal móvil y luego se "olvidaban" de actualizar la versión de Android de ese dispositivo (potenciando así la compra de un nuevo móvil).
Para solucionar esto, Google ha hecho firmar un acuerdo con distintas compañías para comprometerse a mantener actualizado el dispositivo al menos durante sus primeros 18 meses.
Las actualizaciones se realizan mediante un sistema llamado OTA (Over the Air), que permite actualizar el dispositivo automáticamente vía 3G o WiFi, sin necesidad de cables, software o procesos manuales.
Pero lo realmente interesante de Android es tener en cuenta que se trata de un sistema pensado para ser aplicable a prácticamente cualquier dispositivo. Algunos ejemplos podrían ser el kit de manos libres para el coche Parrot Asteroid, el televisor Sony Google TV o... ¡Hasta unas gafas de esquí de Recon Instruments!
Nivel 3: Launcher
El Launcher es la apariencia del «escritorio» del móvil, el entorno donde trabajamos. La pantalla principal (donde colocamos iconos o widgets), la lista de aplicaciones del móvil (app drawer), etc...
En realidad, sólo se trata de una aplicación más, y puede ser reemplazada por cualquier otro Launcher. Un error muy común en usuarios sin conocimientos es elegir un dispositivo Android por su launcher. ¡Nunca hacer esto! Siempre podrás cambiar este interfaz posteriormente.
Cada compañía suele desarrollar un Launcher diferente para diferenciarse de la competencia, pero pueden reemplazarse por cualquier otro.
HTC Sense, el interfaz oficial de HTC
Touchwiz, el interfaz oficial de Samsung
Regina3D, launcher de Nemustech
Launcher2 el interfaz oficial de Android 2, de Google
GoLauncher, launcher de GoLauncher Team
ADW Launcher, launcher de AnderWeb
Launcher Pro, launcher de Federico Carnales
La diversidad de modelos existentes de dispositivos Android puede llevarnos a confusión y no saber cuál es el mejor. Sin embargo, lo que hay que entender es que no hay que buscar «el mejor móvil», sino el móvil que se adapte mejor a nuestras necesidades y prioridades.
Ahora la pregunta es... ¿En qué características debo fijarme? ¿Cuál es mejor?
Procesador
El primer punto (quizás el más importante) es el procesador o CPU del dispositivo. Este procesador principal es el que determinará la velocidad con la que actue.
Además, existe un procesador gráfico auxiliar llamado GPU que se encarga de las operaciones relacionadas con los gráficos (y así liberando de cierta carga al procesador principal).
Ciertos dispositivos como HTC Tatoo o HTC Wildfire carecen de este procesador gráfico. Puedes consultar en la página de Qualcomm estas y otras características relacionadas.
Memoria
En Android existen tres tipos de memoria (de más rápida a más lenta):
Memoria RAM
Se trata del tipo de memoria más rápida del dispositivo. Es memoria temporal y no se utiliza para almacenamiento, sino para tareas rápidas y aplicaciones en uso.
Disponer de muy poca RAM, como en la HTC Magic, es algo que repercute de forma importante en el rendimiento del dispositivo, que debe finalizar aplicaciones para cargar otras cuando las necesite.
Memoria interna
También llamada memoria NAND o MTD (o incorrectamente, ROM) es el equivalente al disco duro de nuestro dispositivo.
Aquí se guardará la versión actual del sistema operativo, el sistema de recuperación de Android, los diferentes logos o imágenes de arranque, las aplicaciones, etc...
Un detalle muy importante, es que los fabricantes mencionaban la capacidad total de la memoria interna del dispositivo (y no el espacio libre), y algunos dispositivos como el Samsung Galaxy 3 con poco espacio libre en la memoria interna, no tenían demasiado espacio para aplicaciones.
Memoria externa
La denominada memoria externa o memoria SD (también incorrectamente, ya que son tarjetas microSDHC) es el tipo de memoria más lento de los tres, y se utiliza principalmente para almacenamiento de archivos de gran tamaño y de uso poco frecuente (fotografías, archivos MP3, vídeos, etc...).
Cabe destacar dos tipos de características dentro de las tarjetas de memoria microSDHC:
Capacidad: El tamaño total de la memoria (8GB, 16GB, 32GB...).
Velocidad: El rendimiento en cuanto a velocidad. Cada clase representa la velocidad de transferencia mínima garantizada (MicroSDHC Class 2: 2MB/s).
Estructura de la memoria interna
Aunque la estructura de la memoria interna depende de cada fabricante (la especificada en este artículo es de una HTC Magic), la memoria se divide en varias particiones entre las que se encuentran una partición de arranque, un recovery (menú de recuperación de errores), una partición de caché y, sobretodo las dos más importantes: la partición de sistema y la partición de datos de usuario.
Partición /system
En la partición de sistema se guarda información del sistema operativo, como fuentes (tipos de letra), aplicaciones del sistema (las primarias y oficiales de Google), sonidos de notificaciones y alarmas o el framework (entorno y ventanas gráficas) del sistema operativo.
Partición /userdata
En la partición de datos del usuario se guarda la información relacionada al mismo, como registros de errores de programas (en una carpeta llamada «lápidas»), información local, el caché de la máquina virtual Dalvik o las aplicaciones descargadas del market, así como la información asociada a cada aplicación del dispositivo.
Task-Killer
Quizás, uno de los errores más frecuentes en Android es el de considerar el uso de un task-killer (o administrador de tareas) para liberar memoria y conseguir mayor velocidad.
Esto se debe a que la mayoría de las personas asocian un modelo antiguamente utilizado, y desconocen que los sistemas operativos actuales siguen la máxima «Memoria RAM no utilizada, memoria RAM desperdiciada», ya que Android se encarga de cerrar y abrir las aplicaciones dependiendo de la necesidad de RAM del sistema, manteniendo abiertas las aplicaciones más utilizadas para mayor eficiencia.
Tienes información más detallada acerca de los problemas al utilizar un task-killer en el primer punto del artículo Optimizar Android: Velocidad y batería.
Versiones de Android
Como mencionamos anteriormente, Android tiene diferentes versiones que han sido lanzadas a lo largo del tiempo. Cada versión posterior, incluye sobre las anteriores muchas novedades y características interesantes.
Las versiones de Android actuales para móviles son las siguientes:
Cupcake (Abril 2009)
Donut (Septiembre 2009)
Eclair (Enero 2010)
Froyo (Junio 2010)
Gingerbread (Diciembre 2010)
Quizás, el salto más importante se efectua en Froyo (versión 2.2) donde, entre otras cosas, se introducen dos funcionalidades importantes:
Mover apps a la tarjeta SD: En versiones anteriores de Android, las aplicaciones sólo podían guardarse en la memoria interna del teléfono. Así pues, en dispositivos con memoria interna muy escasa, sólo era posible instalar un número de aplicaciones limitado.
Compilador JIT: Se introduce una mejora considerable denominada JIT (Just in Time), que acelera en gran medida la ejecución de las aplicaciones.
Por otro lado, existen otras versiones más específicas:
Honeycomb: Esta versión de Android esta orientada a tablets y se incluye en dispositivos como Motorola Xoom.
Ice Cream: Futura versión de Android que mezclará Gingerbread (rama de dispositivos móviles) y Honeycomb (rama de tablets) en una misma versión.
Fragmentación
El polémico tema de la fragmentación en Android ha disminuido durante los últimos años. No es de extrañar, ya que la cantidad de terminales con versiones antiguas a principios del año 2010 (y anteriores) era bastante pronunciada.
Sin embargo, esta fragmentación se ha visto reducida en la actualidad hasta un punto que ya no representa un problema (al menos no distinto del que ocurre en otras plataformas).
Ciclo de vida
Entrando un poco en el apartado de desarrollo, el ciclo de vida de una actividad en Android es uno de los conceptos básicos que debe aprender un programador.
Una aplicación al ser iniciada, pasa por los siguientes estados:
onCreate: La actividad se crea.
onStart: La actividad se inicia (mostrar interfaz).
onResume: La continua la actividad (tareas «pesadas»).
onPause: Se pausa la actividad.
onStop: Se detiene la actividad.
onDestroy: Se destruye la actividad.
onRestart: Se vuelve a iniciar una actividad detenida previamente.
Destacar que las tareas «pesadas» (obtener información por Internet, por ejemplo, que puede llegar a tardar bastante) deberían realizarse en el estado onResume, mientras que en onStart debería presentarse la interfaz y una posible ventana de carga.
En caso contrario, podría iniciarse la aplicación y mostrarse una pantalla negra durante varios segundos, error común en desarrolladores inexpertos.
Otro error muy frecuente es olvidarse de liberar los recursos de hardware, lo que puede hacer que la batería se consuma muy rápidamente.
Tipos de errores
Existen dos tipos de errores muy frecuentes en Android, que el usuario debe conocer bien:
FC
Los FC (Fuerce cierre) ocurren cuando se llega a un error en el código del programa. En las últimas versiones de Android también se permite enviar un informe del problema al desarrollador de la aplicación (mediante Market).
ANR
Los ANR (App no responde) pueden ocurrir porque la aplicación se ha quedado en un bucle infinito (una operación que nunca terminará) o, simplemente está tardando demasiado tiempo en terminar un proceso (sería conveniente optimizarlo).
Objetivos
En general, los consejos al desarrollar una aplicación de Android se resumen en cuatro:
Accesibilidad: Que sea cómoda, intuitiva y fácil de utilizar.
Rendimiento: Que no tarde demasiado en cargar.
Respuesta: Que no provoque errores y cuelgues.
Integridad: Asume siempre el peor caso y optimiza.
Aplicación .APK
Una aplicación de Android es un fichero con extensión .APK. En realidad, esto no es más que un fichero comprimido .ZIP renombrado, con una cierta estructura general.
Entre sus componentes, probablemente el fichero más importante es el AndroidManifest.xml, donde se especifican detalles como la versión de Android en las que funcionará esa aplicación, los permisos que necesitará, las resoluciones que podrán mostrar las diferentes pantallas de la aplicación, etc...
Otro de los componentes más importantes, es la carpeta res (resources), donde se guardan ciertos recursos:
drawable: Imágenes a utilizar en la aplicación. Puede llevar el sufijo -ldpi, -mdpi o -hdpi si se quiere distinguir dependiendo de la resolución de pantalla.
layout: Ficheros .xml con información acerca de la interfaz de las actividades (botones, pestañas, textos, imágenes...)
raw: Sonidos o música.
xml: Opciones o información concreta en formato .xml.
values: Cadenas de texto (frases) utilizadas en la aplicación en un idioma específico. Esto facilita muchísimo la traducción a otros idiomas sin tener que tocar en absoluto el código de la aplicación.
Market
Por último, debemos saber que el Android Market es una plataforma donde los usuarios pueden descargar aplicaciones (gratuitas o de pago). Actualmente están preparando el lanzamiento de una nueva versión del Market que además de aplicaciones, permitirá descargar películas, libros, etc...
Como desarrolladores, mediante el pago de una tasa de aproximadamente 18 euros, podemos darnos de alta como desarrolladores y subir nuestras aplicaciones a la plataforma mediante un panel de Publisher.
En el panel dispondremos de múltiples datos e información interesante:
Información sobre nuestras aplicaciones: Número de descargas, usuarios que tienen instalada la aplicación...
Información para usuarios potenciales de nuestra aplicación: capturas de pantalla, descripción en varios idiomas...
Estadísticas: versiones de android, modelo de dispositivo, país...
Comentarios: En diferentes idiomas (en el Market sólo aparecen en nuestro idioma)
Votos: Número de estrellas.
Informes y registros de error: Mensajes del usuario, líneas donde ocurre el error, etc...
Fox_McCloud: este es un copy y paste de una pag. que me encontré por ahi se me hizo muy interesante y deveria estar aqui en este gran foro para todos aquellos que aun no acabamos de entender a todo lo que respecta al sistema operativo android espero y les guste saludos
Hardware: Los componentes físicos del dispositivo.
Android: La base del dispositivo: El sistema operativo.
Launcher: Interfaz gráfica con la que manejamos el dispositivo.
Nivel 1: Hardware
El hardware es la parte física del dispositivo. En Android es muy importante conocer las características del dispositivo a adquirir. Pero es aún más importante tener una lista de prioridades altas (procesador, memoria RAM, tamaño de la pantalla, etc...) y una lista de prioridades bajas (resolución de la cámara, mAh de la batería, marca...).
Esta lista será muy subjetiva. Existirán personas que utilicen muy frecuentemente su cámara porque son fotógrafos, viajan frecuentemente o la utilizan mucho (prioridad alta) y personas que apenas ni la usen (prioridad baja).
Nivel 2: Android
Un error muy extendido (al menos entre iniciados) es el de ver Android como un dispositivo móvil, y no como lo que es: un sistema operativo (y de código abierto). Cualquier empresa puede crear un móvil y utilizar Android en él.
Pasa al contrario, por ejemplo, con iPhone, que si es un dispositivo móvil (su sistema operativo es iOS, y es propiedad de Apple).
Al ser un sistema operativo, cada dispositivo Android dispondrá de una versión concreta instalada (de forma análoga a, por ejemplo Windows con Win98, WinXP, Win7...) con características añadidas respecto a su versión previa. Estas distintas versiones las veremos más adelante.
La versión de Android de un dispositivo puede ser actualizada a una versión posterior. Para ello, el fabricante u operadora debe poner a disposición de sus usuarios la actualización correspondiente. Incluso miembros de la comunidad de un dispositivo suelen crear actualizaciones no oficiales.
Un problema que se extendió bastante en el pasado, es que las compañías lanzaban un terminal móvil y luego se "olvidaban" de actualizar la versión de Android de ese dispositivo (potenciando así la compra de un nuevo móvil).
Para solucionar esto, Google ha hecho firmar un acuerdo con distintas compañías para comprometerse a mantener actualizado el dispositivo al menos durante sus primeros 18 meses.
Las actualizaciones se realizan mediante un sistema llamado OTA (Over the Air), que permite actualizar el dispositivo automáticamente vía 3G o WiFi, sin necesidad de cables, software o procesos manuales.
Pero lo realmente interesante de Android es tener en cuenta que se trata de un sistema pensado para ser aplicable a prácticamente cualquier dispositivo. Algunos ejemplos podrían ser el kit de manos libres para el coche Parrot Asteroid, el televisor Sony Google TV o... ¡Hasta unas gafas de esquí de Recon Instruments!
Nivel 3: Launcher
El Launcher es la apariencia del «escritorio» del móvil, el entorno donde trabajamos. La pantalla principal (donde colocamos iconos o widgets), la lista de aplicaciones del móvil (app drawer), etc...
En realidad, sólo se trata de una aplicación más, y puede ser reemplazada por cualquier otro Launcher. Un error muy común en usuarios sin conocimientos es elegir un dispositivo Android por su launcher. ¡Nunca hacer esto! Siempre podrás cambiar este interfaz posteriormente.
Cada compañía suele desarrollar un Launcher diferente para diferenciarse de la competencia, pero pueden reemplazarse por cualquier otro.
HTC Sense, el interfaz oficial de HTC
Touchwiz, el interfaz oficial de Samsung
Regina3D, launcher de Nemustech
Launcher2 el interfaz oficial de Android 2, de Google
GoLauncher, launcher de GoLauncher Team
ADW Launcher, launcher de AnderWeb
Launcher Pro, launcher de Federico Carnales
La diversidad de modelos existentes de dispositivos Android puede llevarnos a confusión y no saber cuál es el mejor. Sin embargo, lo que hay que entender es que no hay que buscar «el mejor móvil», sino el móvil que se adapte mejor a nuestras necesidades y prioridades.
Ahora la pregunta es... ¿En qué características debo fijarme? ¿Cuál es mejor?
Procesador
El primer punto (quizás el más importante) es el procesador o CPU del dispositivo. Este procesador principal es el que determinará la velocidad con la que actue.
Además, existe un procesador gráfico auxiliar llamado GPU que se encarga de las operaciones relacionadas con los gráficos (y así liberando de cierta carga al procesador principal).
Ciertos dispositivos como HTC Tatoo o HTC Wildfire carecen de este procesador gráfico. Puedes consultar en la página de Qualcomm estas y otras características relacionadas.
Memoria
En Android existen tres tipos de memoria (de más rápida a más lenta):
Memoria RAM
Se trata del tipo de memoria más rápida del dispositivo. Es memoria temporal y no se utiliza para almacenamiento, sino para tareas rápidas y aplicaciones en uso.
Disponer de muy poca RAM, como en la HTC Magic, es algo que repercute de forma importante en el rendimiento del dispositivo, que debe finalizar aplicaciones para cargar otras cuando las necesite.
Memoria interna
También llamada memoria NAND o MTD (o incorrectamente, ROM) es el equivalente al disco duro de nuestro dispositivo.
Aquí se guardará la versión actual del sistema operativo, el sistema de recuperación de Android, los diferentes logos o imágenes de arranque, las aplicaciones, etc...
Un detalle muy importante, es que los fabricantes mencionaban la capacidad total de la memoria interna del dispositivo (y no el espacio libre), y algunos dispositivos como el Samsung Galaxy 3 con poco espacio libre en la memoria interna, no tenían demasiado espacio para aplicaciones.
Memoria externa
La denominada memoria externa o memoria SD (también incorrectamente, ya que son tarjetas microSDHC) es el tipo de memoria más lento de los tres, y se utiliza principalmente para almacenamiento de archivos de gran tamaño y de uso poco frecuente (fotografías, archivos MP3, vídeos, etc...).
Cabe destacar dos tipos de características dentro de las tarjetas de memoria microSDHC:
Capacidad: El tamaño total de la memoria (8GB, 16GB, 32GB...).
Velocidad: El rendimiento en cuanto a velocidad. Cada clase representa la velocidad de transferencia mínima garantizada (MicroSDHC Class 2: 2MB/s).
Estructura de la memoria interna
Aunque la estructura de la memoria interna depende de cada fabricante (la especificada en este artículo es de una HTC Magic), la memoria se divide en varias particiones entre las que se encuentran una partición de arranque, un recovery (menú de recuperación de errores), una partición de caché y, sobretodo las dos más importantes: la partición de sistema y la partición de datos de usuario.
Partición /system
En la partición de sistema se guarda información del sistema operativo, como fuentes (tipos de letra), aplicaciones del sistema (las primarias y oficiales de Google), sonidos de notificaciones y alarmas o el framework (entorno y ventanas gráficas) del sistema operativo.
Partición /userdata
En la partición de datos del usuario se guarda la información relacionada al mismo, como registros de errores de programas (en una carpeta llamada «lápidas»), información local, el caché de la máquina virtual Dalvik o las aplicaciones descargadas del market, así como la información asociada a cada aplicación del dispositivo.
Task-Killer
Quizás, uno de los errores más frecuentes en Android es el de considerar el uso de un task-killer (o administrador de tareas) para liberar memoria y conseguir mayor velocidad.
Esto se debe a que la mayoría de las personas asocian un modelo antiguamente utilizado, y desconocen que los sistemas operativos actuales siguen la máxima «Memoria RAM no utilizada, memoria RAM desperdiciada», ya que Android se encarga de cerrar y abrir las aplicaciones dependiendo de la necesidad de RAM del sistema, manteniendo abiertas las aplicaciones más utilizadas para mayor eficiencia.
Tienes información más detallada acerca de los problemas al utilizar un task-killer en el primer punto del artículo Optimizar Android: Velocidad y batería.
Versiones de Android
Como mencionamos anteriormente, Android tiene diferentes versiones que han sido lanzadas a lo largo del tiempo. Cada versión posterior, incluye sobre las anteriores muchas novedades y características interesantes.
Las versiones de Android actuales para móviles son las siguientes:
Cupcake (Abril 2009)
Donut (Septiembre 2009)
Eclair (Enero 2010)
Froyo (Junio 2010)
Gingerbread (Diciembre 2010)
Quizás, el salto más importante se efectua en Froyo (versión 2.2) donde, entre otras cosas, se introducen dos funcionalidades importantes:
Mover apps a la tarjeta SD: En versiones anteriores de Android, las aplicaciones sólo podían guardarse en la memoria interna del teléfono. Así pues, en dispositivos con memoria interna muy escasa, sólo era posible instalar un número de aplicaciones limitado.
Compilador JIT: Se introduce una mejora considerable denominada JIT (Just in Time), que acelera en gran medida la ejecución de las aplicaciones.
Por otro lado, existen otras versiones más específicas:
Honeycomb: Esta versión de Android esta orientada a tablets y se incluye en dispositivos como Motorola Xoom.
Ice Cream: Futura versión de Android que mezclará Gingerbread (rama de dispositivos móviles) y Honeycomb (rama de tablets) en una misma versión.
Fragmentación
El polémico tema de la fragmentación en Android ha disminuido durante los últimos años. No es de extrañar, ya que la cantidad de terminales con versiones antiguas a principios del año 2010 (y anteriores) era bastante pronunciada.
Sin embargo, esta fragmentación se ha visto reducida en la actualidad hasta un punto que ya no representa un problema (al menos no distinto del que ocurre en otras plataformas).
Ciclo de vida
Entrando un poco en el apartado de desarrollo, el ciclo de vida de una actividad en Android es uno de los conceptos básicos que debe aprender un programador.
Una aplicación al ser iniciada, pasa por los siguientes estados:
onCreate: La actividad se crea.
onStart: La actividad se inicia (mostrar interfaz).
onResume: La continua la actividad (tareas «pesadas»).
onPause: Se pausa la actividad.
onStop: Se detiene la actividad.
onDestroy: Se destruye la actividad.
onRestart: Se vuelve a iniciar una actividad detenida previamente.
Destacar que las tareas «pesadas» (obtener información por Internet, por ejemplo, que puede llegar a tardar bastante) deberían realizarse en el estado onResume, mientras que en onStart debería presentarse la interfaz y una posible ventana de carga.
En caso contrario, podría iniciarse la aplicación y mostrarse una pantalla negra durante varios segundos, error común en desarrolladores inexpertos.
Otro error muy frecuente es olvidarse de liberar los recursos de hardware, lo que puede hacer que la batería se consuma muy rápidamente.
Tipos de errores
Existen dos tipos de errores muy frecuentes en Android, que el usuario debe conocer bien:
FC
Los FC (Fuerce cierre) ocurren cuando se llega a un error en el código del programa. En las últimas versiones de Android también se permite enviar un informe del problema al desarrollador de la aplicación (mediante Market).
ANR
Los ANR (App no responde) pueden ocurrir porque la aplicación se ha quedado en un bucle infinito (una operación que nunca terminará) o, simplemente está tardando demasiado tiempo en terminar un proceso (sería conveniente optimizarlo).
Objetivos
En general, los consejos al desarrollar una aplicación de Android se resumen en cuatro:
Accesibilidad: Que sea cómoda, intuitiva y fácil de utilizar.
Rendimiento: Que no tarde demasiado en cargar.
Respuesta: Que no provoque errores y cuelgues.
Integridad: Asume siempre el peor caso y optimiza.
Aplicación .APK
Una aplicación de Android es un fichero con extensión .APK. En realidad, esto no es más que un fichero comprimido .ZIP renombrado, con una cierta estructura general.
Entre sus componentes, probablemente el fichero más importante es el AndroidManifest.xml, donde se especifican detalles como la versión de Android en las que funcionará esa aplicación, los permisos que necesitará, las resoluciones que podrán mostrar las diferentes pantallas de la aplicación, etc...
Otro de los componentes más importantes, es la carpeta res (resources), donde se guardan ciertos recursos:
drawable: Imágenes a utilizar en la aplicación. Puede llevar el sufijo -ldpi, -mdpi o -hdpi si se quiere distinguir dependiendo de la resolución de pantalla.
layout: Ficheros .xml con información acerca de la interfaz de las actividades (botones, pestañas, textos, imágenes...)
raw: Sonidos o música.
xml: Opciones o información concreta en formato .xml.
values: Cadenas de texto (frases) utilizadas en la aplicación en un idioma específico. Esto facilita muchísimo la traducción a otros idiomas sin tener que tocar en absoluto el código de la aplicación.
Market
Por último, debemos saber que el Android Market es una plataforma donde los usuarios pueden descargar aplicaciones (gratuitas o de pago). Actualmente están preparando el lanzamiento de una nueva versión del Market que además de aplicaciones, permitirá descargar películas, libros, etc...
Como desarrolladores, mediante el pago de una tasa de aproximadamente 18 euros, podemos darnos de alta como desarrolladores y subir nuestras aplicaciones a la plataforma mediante un panel de Publisher.
En el panel dispondremos de múltiples datos e información interesante:
Información sobre nuestras aplicaciones: Número de descargas, usuarios que tienen instalada la aplicación...
Información para usuarios potenciales de nuestra aplicación: capturas de pantalla, descripción en varios idiomas...
Estadísticas: versiones de android, modelo de dispositivo, país...
Comentarios: En diferentes idiomas (en el Market sólo aparecen en nuestro idioma)
Votos: Número de estrellas.
Informes y registros de error: Mensajes del usuario, líneas donde ocurre el error, etc...
Fox_McCloud: este es un copy y paste de una pag. que me encontré por ahi se me hizo muy interesante y deveria estar aqui en este gran foro para todos aquellos que aun no acabamos de entender a todo lo que respecta al sistema operativo android espero y les guste saludos
Última edición por FoX_McCloud el Miér Ene 18, 2012 2:20 pm, editado 1 vez