jueves, 27 de febrero de 2014
¿Como empezar a programar en Android?
Además de Java se utiliza XML para la parte visual, otro lenguaje descriptivo muy fácil de utilizar y que aporta sencillez a la hora de programar en Android.
Se puede programar en cualquier plataforma Windows, MAC o Linux. Para ello hay que descargar el Android SDK, que consta de todas las librerías Java que utiliza Android, el emulador para poder probar las aplicaciones que realizas y multitud de aplicaciones que vienen ya desarrolladas por Google y que seguramente implementen los teléfonos móviles que salgan con Android.
Creando un proyecto Android
Luego de instalar el plugin ADT, explicado en Descargar el Android SDK, podemos crear un proyecto Android nuevo o a través de un código existente. Para crear un proyecto nuevo:- Elige File > New > Project.
- Elige Android > Android Project y click en Next.
- Elige los contenidos para el proyecto:
- Ingresa un Project Name. Este será el nombre de la carpeta donde tu proyecto será creado.
- En Contents, elige Create new project in workspace, luego la locacion del workspace (carpeta donde estarán todas tus aplicaciones) del proyecto.
- En Target, elige un Android target que será usado en tu proyecto. El Build Target especifica que plataformas quieres que tu aplicacion utilice.
- Nota: puedes cambiar el Build Target de tu proyecto cuando quieras: con click derecho en el proyecto, en el Package Explorer, elige Properties, luego Android y luego elige el Project Target que desees.
- En Properties, llena todos los campos necesarios:
- Ingresa un Application name. Este es un titulo legible por un humano para tu aplicación — es el nombre que se mostrará en tu dispositivo Android.
- Ingresa un Package name.Este es el nombre del paquete (o namespace) donde estará todo el codigo fuente.
- Elige Create Activity e ingresa un nombre para tu clase Activity principal (main).
- Ingresa un Min SDK Version. Este es un entero que indica el mínimo Nivel API (API Level) que requiere tu aplicación para correr apropiadamente. Ingresando esto se actualiza automaticamente el atributominSdkVersion en el elemento <uses-sdk> de tu archivo Manifiesto.
- Click en Finish.
src/
Incluye todos los archivos Java de tu aplicación, como Actividades, Servicios, etc.
<Android Version>/ (e.g., Android 1.1/)
Incluye el archivo android.jar. Este esta determinado por el build target (plataforma) que has elegido en los pasos anteriores.
gen/
Este contiene los archivos Java generados por el ADT, tal como el R.java e interfaces creadas desde los archivos AIDL.
assets/
Este está vacío. Puede usarlo para almacenar archivos raw asset.
res/
Una carpeta para los recursos de tu aplicación (resources), tal como archivos de dibujo, archivos de pantallas(layout), valores strings, etc.
AndroidManifest.xml
El Manifiesto de Android (Android Manifest) para tu proyecto.
default.properties
Este archivo contiene configuraciones del proyecto, tal como el build target (plataforma elegida).
Nota: Cualquier duda únete al foro y consulta.
Corriendo tu aplicación
Nota: Antes de que puedas correr tu aplicacion en el Emulador Android, debes crear un Android Virtual Device (AVD),
explicado en Descargar el Android SDK.
explicado en Descargar el Android SDK.
Para correr (o hacer debugging en) tu aplicación, elige Run > Run (or Run > Debug) desde el menu principal del Eclipse.
El plugin ADT creará automaticamente un enlace (launch) por default para el proyecto.
El plugin ADT creará automaticamente un enlace (launch) por default para el proyecto.
Cuando ya hayas elegido si correr o debug tu aplicación, Eclipse realizará lo siguiente:
1. Compila el proyecto (si ha habido algún cambio).
2. Crea una configuración de enlace por default (si este aun no existe para el proyecto).
3. Instala e inicia la aplicación en un emulador o dispositivo.
2. Crea una configuración de enlace por default (si este aun no existe para el proyecto).
3. Instala e inicia la aplicación en un emulador o dispositivo.
Si has elegido debug, la aplicación se iniciará en modo Debug, mostrando el diálogo "Waiting For Debugger",
una vez que el debugger es iniciado el Eclipse se abrirá en perspectiva Debug.
una vez que el debugger es iniciado el Eclipse se abrirá en perspectiva Debug.
Nota: Cualquier duda únete al foro y consulta.
Aplicaciones Android con código abierto
La mejor manera de iniciarse como programador Android es viendo aplicaciones con código abierto o ejemplos.
A continuación hay varios sitios en Internet donde pueden consultar:
A continuación hay varios sitios en Internet donde pueden consultar:
No.1: Android SDK Samples: La mejor manera de aprender como se hacen algunas cosas es ver ejemplos de código
Via: http://developer.android.com/resources/samples/index.html
Para que los desarrolladores Android se inicien rápidamente, Android SDK incluye una variedad de código ejemplo y tutoriales que ilustran los conceptos claves y técnicas de desarrollo en aplicaciones Android. La siguiente lista provee un sumario de las aplicaciones que están disponibles con el Android SDK:
1. API Demos
Una variedad de aplicaciones pequeñas donde se muestra el funcionamiento de varios componentes del framework.
2. Bluetooth Chat
Para enviar mensajes de texto de forma bidireccional por Bluetooth.
3. BusinessCard
Muestra como enlazar un contacto elegido desde una actividad. Este ejemplo también utiliza reflection para asegurar que se esta usando la versión correcta de la API de contactos dependiendo de cual nivel de API este corriendo la aplicación.
4. Contact Manager
Muestra como consultar al proveedor de contactos del sistema usando la API ContactsContract, como también insertar contactos en una cuenta especifica.
5. Home
Una aplicación que reemplazan a la pantalla principal.
6. JetBoy
Un juego que muestra la tecnología de música interactiva de SONiVOX JET, con JetPlayer.
7. Live Wallpaper
Muestra como crear un fondo de pantalla e incorporarlo en una aplicación para que los usuarios puedan luego instalarlo en sus dispositivos.
8. Lunar Lander
El clásico Juego de Lunar Lander.
9. Multiple Resolutions
Muestra como usar el directorio res para que este provea diferentes fuentes para según las configuraciones de la pantalla.
10.Note Pad
Una aplicación que guarda las notas. Similar al Block de Notas.
11. SampxleSyncAdapter
Muestra como una aplicación puede comunicarse con un servicio basado en la nube y sincronizar sus datos con los datos almacenados localmente en un proveedor de contenidos. El ejemplo usa dos partes relacionadas del framework Android - el administrador de cuenta y el administrador de sincronización (a través de un adaptador sync).
12. Searchable Dictionary
Muestra el framework de búsqueda de Android, incluyendo como proveer sugerencias de búsqueda para el Quick Search Box.
13. Snake
Una implementación del clásico juego “Snake.”
14. Soft Keyboard
Un ejemplo de escritura con un teclado en pantalla.
15. Wiktionary
Un ejemplo de creación de widgets interactivos para visualizar en la pantalla principal de Android.
16. Wiktionary (Simplified)
Un simple ejemplo de widgets para la pantalla principal de Android.
Para que los desarrolladores Android se inicien rápidamente, Android SDK incluye una variedad de código ejemplo y tutoriales que ilustran los conceptos claves y técnicas de desarrollo en aplicaciones Android. La siguiente lista provee un sumario de las aplicaciones que están disponibles con el Android SDK:
1. API Demos
Una variedad de aplicaciones pequeñas donde se muestra el funcionamiento de varios componentes del framework.
2. Bluetooth Chat
Para enviar mensajes de texto de forma bidireccional por Bluetooth.
3. BusinessCard
Muestra como enlazar un contacto elegido desde una actividad. Este ejemplo también utiliza reflection para asegurar que se esta usando la versión correcta de la API de contactos dependiendo de cual nivel de API este corriendo la aplicación.
4. Contact Manager
Muestra como consultar al proveedor de contactos del sistema usando la API ContactsContract, como también insertar contactos en una cuenta especifica.
5. Home
Una aplicación que reemplazan a la pantalla principal.
6. JetBoy
Un juego que muestra la tecnología de música interactiva de SONiVOX JET, con JetPlayer.
7. Live Wallpaper
Muestra como crear un fondo de pantalla e incorporarlo en una aplicación para que los usuarios puedan luego instalarlo en sus dispositivos.
8. Lunar Lander
El clásico Juego de Lunar Lander.
9. Multiple Resolutions
Muestra como usar el directorio res para que este provea diferentes fuentes para según las configuraciones de la pantalla.
10.Note Pad
Una aplicación que guarda las notas. Similar al Block de Notas.
11. SampxleSyncAdapter
Muestra como una aplicación puede comunicarse con un servicio basado en la nube y sincronizar sus datos con los datos almacenados localmente en un proveedor de contenidos. El ejemplo usa dos partes relacionadas del framework Android - el administrador de cuenta y el administrador de sincronización (a través de un adaptador sync).
12. Searchable Dictionary
Muestra el framework de búsqueda de Android, incluyendo como proveer sugerencias de búsqueda para el Quick Search Box.
13. Snake
Una implementación del clásico juego “Snake.”
14. Soft Keyboard
Un ejemplo de escritura con un teclado en pantalla.
15. Wiktionary
Un ejemplo de creación de widgets interactivos para visualizar en la pantalla principal de Android.
16. Wiktionary (Simplified)
Un simple ejemplo de widgets para la pantalla principal de Android.
No.2: Apps para Android: Aplicaciones Ejemplo para la plataforma Android
Via: http://code.google.com/p/apps-for-android/
Una colección de aplicaciones útiles de código abierto que demuestra las características de la plataforma Android:
1. Amazed: Un Juego para guiar bolas muy activo que utiliza el acelerómetro.
2. AndroidGlobalTime: Una representación completa de la tierra que puede ser rotada a gusto.
3. AnyCut: Una utilidad que permite crear accesos directos en el pantalla principal de prácticamente cualquier cosa.
4. Clickin2DaBeat: Un juego que combina YouTube o lógica de juegos rítmicos.
5. DivideAndConquer: Un juego en el que se deben aislar bolas moviles creando muros a su alrededor.
6. LOLcat Builder:
7. Panoramio: Una aplicación que muestra puntos de interés y fotos de las ubicaciones cercanas.
8. Photostream: Una aplicación que le permite ver juegos de fotos de servicios on-line como Flickr.
9. Radar: Una vista de una ubicación relativa al estilo radar, utilizada por Panoramio y otros.
10. RingsExtended: Una aplicación que permite realizar un control mejorado sobre los ringtones.
11. Samples: Ejemplos varios mostrando las características de la plataforma Android (entre ellos OpenGL ES).
12. SpriteMethodTest: Una aplicación que compara la velocidad de varios métodos de dibujo 2D.
13. Translate: Traduce mas de 150 lenguajes con el servicio de traducción de Google.
14. WebViewDemo: Demuestra como Java y JavaScript pueden llamarse entre si en una web view.
15. WikiNotes: Un block de notas basado en wiki que usa intents para navegar los contenidos de las notas.
Una colección de aplicaciones útiles de código abierto que demuestra las características de la plataforma Android:
1. Amazed: Un Juego para guiar bolas muy activo que utiliza el acelerómetro.
2. AndroidGlobalTime: Una representación completa de la tierra que puede ser rotada a gusto.
3. AnyCut: Una utilidad que permite crear accesos directos en el pantalla principal de prácticamente cualquier cosa.
4. Clickin2DaBeat: Un juego que combina YouTube o lógica de juegos rítmicos.
5. DivideAndConquer: Un juego en el que se deben aislar bolas moviles creando muros a su alrededor.
6. LOLcat Builder:
7. Panoramio: Una aplicación que muestra puntos de interés y fotos de las ubicaciones cercanas.
8. Photostream: Una aplicación que le permite ver juegos de fotos de servicios on-line como Flickr.
9. Radar: Una vista de una ubicación relativa al estilo radar, utilizada por Panoramio y otros.
10. RingsExtended: Una aplicación que permite realizar un control mejorado sobre los ringtones.
11. Samples: Ejemplos varios mostrando las características de la plataforma Android (entre ellos OpenGL ES).
12. SpriteMethodTest: Una aplicación que compara la velocidad de varios métodos de dibujo 2D.
13. Translate: Traduce mas de 150 lenguajes con el servicio de traducción de Google.
14. WebViewDemo: Demuestra como Java y JavaScript pueden llamarse entre si en una web view.
15. WikiNotes: Un block de notas basado en wiki que usa intents para navegar los contenidos de las notas.
No.3: Tomdroid: Implementación de Tomboy en Android
Un intento de producir un cliente Tomboy para la plataforma Android de Google:
Para aquellos que no lo sabian Tomboy es la mejor aplicación para el tomado de notas utilizando una interfaz de estilo wiki muy amigable. El objetivo de Tomdroid es traer los mismos beneficios a la plataforma Android, como tambien mantener la compatibilidad del formato de archivo y la posibilidad de sincronizar notas con Tomboy. Por supuesto, otro desafio para el proyecto es también hacer que esta linda interfaz de usuario se adapte bien a la pantalla del móvil.
No.4: Shelves: Shelves es una aplicación de administracion personal de librospara Android.
Via: http://code.google.com/p/shelves/
Shelves te permite administrar una colección de libros desde tu teléfono. Con Shelves, puedes agregar un libro escaneando su código de barras, usando las búsquedas Web o entrando información manualmente. Shelves te ayuda a buscar libros en tu colección a través de varias búsquedas entre ellas escaneando el código de barras de un libro.
Shelves te permite administrar una colección de libros desde tu teléfono. Con Shelves, puedes agregar un libro escaneando su código de barras, usando las búsquedas Web o entrando información manualmente. Shelves te ayuda a buscar libros en tu colección a través de varias búsquedas entre ellas escaneando el código de barras de un libro.
No.5: Proyectos Android en Google Code
Via: http://code.google.com/hosting/search?q=android&projectsearch=Search+projects
Si buscas Proyectos Android en Google Code, encontraras una cantidad de aplicaciones android de código abierto donde podrás elegir la que te guste.
Si buscas Proyectos Android en Google Code, encontraras una cantidad de aplicaciones android de código abierto donde podrás elegir la que te guste.
Historia de ANDROID
El primer smartphone (o teléfono inteligente) que atrajo la atención del público fue el BlackBerry de la compañía canadienseResearch In Motion (RIM), como resultado de la fragmentación (ausencia de estándares) del mercado celular tanto el costo de los teléfonos y el mantenimiento del servicio ponía esta tecnología lejos del alcance de la gran mayoría de usuarios. No fue sino hasta la introducción del iPhone en el 2007, que el concepto de un smartphone fácil de usar, estándar y de un precio accesible (al menos para los países desarrollados) desató la masificación de los smartphones más alla de la esfera empresarial.
En el tiempo en el cual BlackBerry era el rey, ya habían otro competidores disputandose el mercado entre ellos podemos nombrar a Treo (de Palm Inc.) y Symbian (de Nokia). Pero la falta de estándares entre proveedores celulares hacía que fuera necesario personalizar el hardware al tipo de tecnología del carrier, esto fragmentaba el mercado e impedía aprovechar las ventajas de la economía de escala. Una historia similar se vivió en el mundo de las microcomputadoras (si no han escuchado ese término antes es porque eres muy jóven) antes de la introducción del IBM PC. Había decenas de fabricantes cada uno incompatible con el otro no sólo a nivel de software, sino también a nivel de hardware; de esa época son las legendarias Commodore 64, TRS-80 Color Computer (de la cual fuí usuario), Apple II (la microcomputadora diseñada porWoz), la Amiga o la Atari ST. El PC original era en cierta manera inferior a todas esas computadoras, sin embargo es la actual plataforma dominante en los escritorios a tal punto que a las microcomputadoras actualmente las llamamos PC. ¿Qué fue lo que hizo que todo el mercado se consolidara en una sóla plataforma?, no fue ni la publicidad de IBM, ni trucos monopólicos del gigante azul y el aprendiz de brujo Bill Gates, fue simplemente un conjunto de estándares públicos que permitían a cualquiera desarrollar hardware o software para el IBM PC, de alli que decir que se era compatible con el PC fuera una característica importante que todo fabricante deseaba ofrecer.

Rubin ya tenía varios inversionistas de riesgo dispuestos a invertir en el proyecto Android, pero había otro proyecto similar llamado Symbian que también corría sobre Linux. Por lo tanto se aproximó a Google para ofrecerles exclusividad en las búsquedas realizadas desde los celulares con Android a cambio de que Google expresara su apoyo público a la plataforma. Luego de que Rubin le hiciera la presentación a Larry Page en el 2005, este recibió una oferta de compra de parte de Google por $50 millones, y la dirección del departamento de la compañía que se encargaría del desarrollo de la plataforma para celulares. Más detalles sobre este hecho pueden ser leídos en un artículo de Wired llamado "Google's Open Source Android OS Will Free the Wireless Web".
Como siempre el actual CEO de Microsoft Steve Balmer expresó sus críticas a lo que estaba haciendo Google en ese entonces y sus palabras textuales fueron: "Su esfuerzo es sólo palabras en un papel", tras el lanzamiento de Open Handset Alliance, aunque hay que recordar también lo increíblemente miope que fue ante la introducción del iPhone (ver este video). Desde el momento de sus declaraciones hasta ahora el sistema operativo de Microsoft para celulares ha estado perdiendo usuarios de manera contínua justamente a manos de Android y iPhone.
Aunque el G1 (el primer celular con Android ofrecido por Google) apareción en el último trimestre del 2008, no fue sino hasta la llegada del Nexus One y Android 2.1 (en enero de 2010), que las ventas de celulares con Android se dispararon y consiguieron capturar en menos de un año más de la mitad del mercado de smartphones en U.S.A., desplazando del primer lugar a BlackBerry y sepultando los sueños de conquista global de Apple. En este gráfico (cortesía de gigaom.com), se muestra el meteórico ascenso de Android contra todas las demás alternativas:

Un dato importante que se puede extraer de el mismo gráfico es que iPhone, a pesar de toda la prensa positivo no ha podido aumentar significativamente su cuota de mercado, indicando que Apple nuevamente ha cometido el mismo error con el iPhone que con el Mac, no ha abierto su plataforma para permitir que otros fabricantes de equipo o applicaciones desarrollen libremente para iPad.
Pero esos datos son hasta enero de este año (2011), la ventaja de Android sobre sus competidores no ha hecho más que incrementarce en el segmento de los smartphones en este primer trimestre del año. Obviamente Apple arguye que iOS (el sistema operativo de su iPhone/iPad/iPod) es aún el sistema operativo para dispositivos móviles, lo cual es cierto pero esconde el hecho de que las ventas de iPad (que aún no tiene competido oficial de parte de Android) están estancadas y los iPod (que no son más que iPhone sin el hardware de telefonía celular) están en caída, detalles sobre esto pueden leerse en este post de Business Insiders.
La historia de Android está literalmente por escribirce, con inversionistas creando fondos para promover el desarrollo de aplicaciones para Android, como puede leerse en un reciente post en TechCrunch, que informa sobre la creación de un fondo de $100 millones por parte de DCM para apoyar a los empresarios en desarrollar aplicaciones para Android.
Suscribirse a:
Entradas (Atom)