|
||
|
![]() |
![]() |
Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android |
![]() |
|
Herramientas |
#1
|
||||
|
||||
curso de programacion android
Curso de Programación Android.
Presentación: Es un curso destinado a todos los interesados de aplicaciones bajo el lenguaje de programación Android de Google. La finalidad de esta página es la de poseer una buena base de datos sobre códigos y ayudas para programar en este lenguaje, enriqueciéndonos del trabajo de los demás y compartiendo nuestros descubrimientos. El desarrollo de aplicaciones para móviles, es ya una realidad que no podemos pasar por alto, y si me apuras,…. llegamos tarde. Con precios cada vez más bajos y con cada vez más servicios y de más calidad hace que el uso de estos dispositivos sea cada más frecuente. Todo el código aquí expuesto puede ser utilizado sin ninguna restricción ya sea para uso particular y/o comercial, no haciéndose en ningún caso responsable de los resultados de ese código los usuarios que lo hayan compartido. El curso se organiza en varias partes que se desarrollaran en el tiempo, debido a la posible extensión y a la complejidad del mismo. Agradecer vuestra compresión de antemano. ¿Qué es Android? Usuario. 1. Android es un Sistema Operativo 2. Android está creado para todo tipo de aparatos 3. Android es código libre 4. Android aporta mucho aunque no programes 5. Android tiene un mercado para los programas 6. Ya hay miles de aplicaciones 7. Ya hay móviles con Android 1. Android es un Sistema Operativo Android es un Sistema Operativo, es decir, el programa principal de un ordenador, móvil o cualquier aparato que utilicemos, el Sistema Operativo más conocido es Windows, o el más utilizado por los usuarios medios, dentro de él tenemos muchos más programas, como el Word, Excel, Explorer, ... es como el programa padre de todos porque sin él no puedes abrir ningún otro. Android es lo mismo, un Sistema Operativo que ha sido diseñado (por Google) para utilizarse sobretodo en aparatos pequeños como móviles, PDAs, etc...Por lo que si tenemos un móvil con Android cuando lo encendemos estaremos iniciando Android y una vez esté abierto tendremos un escritorio igual que en Windows e iconos en el escritorio para abrir y utilizar.  2. Android está creado para todo tipo de aparatos Android se ha creado para tenerlo en móviles o aparatos de similar tamaño, como podría ser un navegador de coche, etc... Todos esos aparatos llevan un Sistema Operativo detrás de ellos, es decir, Android se puede integrar en cualquier dispositivo (con algunos mínimos requerimientos). Si tenemos un aparato con Android lo que tendremos es un ordenador pequeño. Al encender el móvil pasará como con Windows, tardará un tiempo en arrancar y una vez que finalice aparecerá un escritorio con iconos al igual que en Windows, en los cuales podremos pinchar y abriremos el programa. Es muy sencillo y cualquiera puede utilizarlo sin conocimiento previo ninguno. En Android todo es fácil, para instalar un programa sólo tienes que seleccionar el que quieras y él mismo se instalará y aparecerá el icono en tu escritorio, es incluso más sencillo que Windows.  3. Android es código libre Android ha sido creado por Google, el cual lo diseñó basándose en Linux, otro sistema operativo (punto 1) pero de código libre ya que esa es la política de Linux. Cuando se dice que es código libre quiere decir que el código de la aplicación (*) es conocido por todo el mundo y que cualquiera con conocimientos para ello puede cambiarlo y hacerlo a su medida. Para entender esto un poco mejor volveremos al ejemplo de Windows, el cual no es código abierto porque nadie tiene su código y nadie puede modificarlo aunque no nos guste, excepto Microsoft. Lo bueno de esto es que hay mucha gente que sabe programar y mucha gente dispuesta a programar en Android porque Google ha dado muchas facilidades para que todo el que quiera programar lo haga, por lo que podrán hacer programas para todos los aparatos que tengan Android. *El código de un programa es el texto que añaden los programadores para crear un programa, después ese texto es compilado y el ordenador genera un archivo que será el que nos llegue a nosotros para instalarlo en nuestro ordenador/móvil para después utilizarlo.  4. Android aporta mucho aunque no programes Android no es sólo para programadores y sería un error pensar eso. Android es un Sistema Operativo igual que cualquier otro con la diferencia que detrás de él hay miles de personas haciendo programas para él y esto es la primera vez que sucede en los móviles, hasta ahora nadie había dado facilidades para realizar programas para móviles, sí existían pero no con este potencial ya que al ser código libre (punto 3) los programadores pueden hacer cualquier cosa, y eso es muy beneficioso para todos los usuarios. Teniendo Android en tu móvil o aparato tendremos la posibilidad de obtener miles de programas, porque no hay una empresa haciendo programas, si no miles de personas y cada una con ideas diferentes. Además al ser tanta gente desarrollando aplicaciones se intenta crear el concepto de comunidad, algo muy extendido entre los informáticos y sobretodo entre programadores. La comunidad es un grupo de gente que se ayuda entre miembros de la misma, es decir, si alguien hace una aplicación se la regala a los demás ya que los que lo van a recibir van a hacer también programas que a ti te van a venir bien y los recibirás gratis también. Aunque no seas programador vas a poder acceder a todos los programas de la gente, tanto los que lo hayan hecho gratis para todo el mundo como los de pago. Sin embargo no hay que sentirse poco activo si no eres un programador porque hay muchas otras maneras de ayudar, como por ejemplo opinar sobre los programas de la gente, decirles qué posibles mejoran pueden hacer, diciendo ideas que se te ocurran o incluso simplemente probando las aplicaciones y diciéndoles si falla algo o no. Android nos está ofreciendo a todos tener un Sistema Operativo gratis, muy completo y con miles de programas, la mayoría gratis o muy baratos. 5. Android tiene un mercado para los programas Si todavía no has utilizado Android te pueden haber surgido miedos sobre la dificultad que suele haber para instalar programas, como por ejemplo en Windows, sin embargo en Android se ha creado un "market", un mercado virtual donde veremos en una lista todos los programas que hay para Android, únicamente tendremos que pulsar sobre el que queremos y se descargará y se instalará él solo. En este mercado puedes buscar un posible programa que quieras ya que no es necesario que sepas si existe o no, buscando alguna palabra como haces en Google podrás encontrar programas que hagan lo que necesitas. Y en caso de que no lo encuentres puedes acceder a la comunidad de desarrolladores en www.Android-Spa.com | Instala la galería del Nexus One en tu Android 2.0 Noticias, Foros, Manuales, Programas y escribir una idea sobre un programa. Es muy común encontrar a alguien interesado en ayudarte y entre varios podréis hacer el programa que deseas. 6. Ya hay miles de aplicaciones Mucha gente está haciendo programas para Android desde antes que éste saliera al mercado, por eso en el mercado de Android puedes ver ya miles de aplicaciones. Lo único que tendrás que hacer cuando tengas Android es seleccionar cuáles de ellas quieres tener instaladas. Aunque siempre podrás desinstalarlas si no te gustan con un simple toque de dedo. Hay aplicaciones de todo tipo, muchas de ellas son juegos muy entretenidos, en los que cabe destacar que los reyes de los juegos en Android son aquellos que te hacen pensar. Pero además de juego podemos encontrar programas para chatear, programas que buscan información sobre un producto y te dice dónde comprarlo más barato, programas que te ayudan a hacer la compra, etc... Todo lo que necesites lo puedes encontrar. Pagina Web oficial:Android.com - Experience Nexus One  ¿Que es android?.Técnico. 1. ¿Cómo empezar a programar en Android? 2. ¿Arquitectura de Android? 3. Jerarquía visual de Android ¿Qué es Android? Android es un stack de software para dispositivos móviles que incluye un sistema operativo, middleware y aplicaciones clave. Google está otorgando un vistazo al SDK de Android, que provee de herramientas y APIs necesarios para comenzar a desarrollar aplicaciones en la plataforma Android, utilizando el lenguaje de programación Java. 1. ¿Cómo empezar a programar en Android? Para empezar a programar en Android es importante tener conocimientos de Java, así como de Programación Orientada a Objetos. Si no conoces Java pero sí sabes programar reconocerás a Java como un lenguaje sencillo y rápido de aprender. 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 de fábrica que salgan con Android. Para instalar el software necesario y configurar todo puedes informarte aquí ( Software necesario para programar y configuracion. ). 2.¿Arquitectura de Android? Los componentes mayores del sistema operativo de Android, cada sección se describe en detalle: Aplicaciones: Las aplicaciones base incluirán un cliente de email, programa de SMS, calendario, mapas, navegador, contactos, y otros. Todas las aplicaciones escritas en el lenguaje de programación Java. Más información..Esqueleto de una aplicación para Android. Framework de aplicaciones: Los desarrolladores tienen acceso completo a los mismos APIs del Framework usados por las aplicaciones base. La arquitectura está diseñada para simplificar el reuso de componentes; cualquier aplicación puede publicar sus capacidades y cualquier otra aplicación puede luego hacer uso de esas capacidades (sujeto a reglas de seguridad del Framework). Éste mismo mecanismo permite que los componentes sean reemplazados por el usuario. Librerías: Android incluye un set de librerías C/C++ usadas por varios componentes del sistema Android. Éstas capacidades se exponen a los desarrolladores a través del Framework de aplicaciones de Android. Algunas son: System C library (implementación librería C Standard), librerías de medios, librerías de gráficos, 3d, SQLite, entre otras. Runtime de Android: Android incluye un set de librerías base que proveen la mayor parte de las funcionalidades disponibles en las librerías base del lenguaje de programación Java. Cada aplicación Android corre su propio proceso, con su propia instancia de la máquina virtual Dalvik. Dalkiv ha sido escrito de forma que un dispositivo puede correr múltiples máquinas virtuales de forma eficiente. Dalkiv ejecuta archivos en el formato Dalvik Executable (.dex), el cual está optimizado para memoria mínima. La Máquina Virtual está basada en registros, y corre clases compiladas por el compilador de Java que han sido transformadas al formato.dex por la herramienta incluida "dx". Núcleo - Linux: Android depende de un Linux versión 2.6 para los servicios base del sistema como seguridad, gestión de memoria, gestión de procesos, stack de red, y modelo de drivers. El núcleo también actúa como una capa de abstracción entre el hardware y el resto del stack de software. Más información en "Conceptos claves de Android: Mapa de arquitectura, Framework, Bloques de construcción" Conceptos claves de Android:Mapa de arquitectura, Framework, Bloques de construcción 3. Jerarquía visual de Android La principal clase de Android es activity, un objeto de la clase android.app.Activity. Un actividad hace multitud de cosas, pero por ella misma no se presenta nada en la pantalla. Para conseguir que aparezca algo en la pantalla es necesario diseñar el UI, con views y viewgroups, que son las clases que se usan para crear la interfaz entre el usuario y la plataforma Android. Views: Una view es un objeto cuya clase es android.view.View. Es una estructura de datos cuyas propiedades contienen los datos de la capa y la información específica del área rectangular de la pantalla. Una view tiene: layout, drawing, focus change, scrolling, etc.. La clase view es útil como clase base para los widgets, que son unas subclases ya implementadas que dibujan los elementos en la pantalla. Los widgets contienen sus propias medidas, pero puedes usarlas para construir tu interfaz más rápidamente. La lista de widgets usables incluyen Text, EditText, InputMethod, MovementMethod, Button, RadioButton, CheckBox, y ScrollView. Viewgroups: Un viewgroup es un objeto de la clase android.view.Viewgroup, como su propio nombre indica, un viewgroup es un objeto especial de view cuya function es contener y controlar la lista de views y de otros viewgroups. Los viewgroups te permiten añadir estructuras a la interfaz y acumular complejos elementos en la pantalla que son diseccionados por una sola entidad. La clase viewgroup es útil como base de la clase layouts, que son subclases implementadas que proveen los tipos más comunes de los layouts de pantalla. Los layouts proporcionan una manera de construir una estructura para una lista de views. Árbol estructurado de la interfaz UI: En la plataforma Android tú defines una Activity del UI usando un árbol de nodos view y viewgroups, como vemos en la imagen de abajo. El árbol puede ser tan simple o complejo como necesites hacerlo, y se puede desarrollar usando los widgets y layouts que Android proporciona o creando tus propias views.  Para añadir el árbol a la pantalla, tu Activity llama al método setContentView() y pasa una referencia al objeto nodo principal. Una vez que el sistema Android ha renferenciado el objeto nodo principal ya puede trabajar directamente con el nodo para anular, medir y dibujar el árbol. Cuando tu Activity está activo y recibe el foco el sistema notifica tu activity y pide al nodo principal medidas y dibuja el árbol. El nodo principal entonces pide que sus nodos hijos se dibujen a sí mismos, a partir de ese momento cada nodo viewgroup del árbol es responsable de pintar sus hijos directos. Como se ha dicho anteriormente, cada viewgroup es el responsable de tomar medidas sobre el espacio que tienen, preparando a sus hijos y llamando a Draw() por cada hijo que se muestra a si mismo. El hijo hace una petición sobre el tamaño y la localización del padre, pero el objeto padre toma la última decisión sobre el tamaño que cada hijo puede tener. LayoutParams: Cómo un hijo especifica su posición y su tamaño Todos los viewgroup usan como clase anidada una extensión de ViewGRoup.LayoutParams. Esta subclase contiene los tipos de propiedades que definen la posición y el tamaño de un hijo, en propiedades apropiadas para la clase de grupo de clases. Hay que reseñar que cada subclase LayoutParams tiene su propia sintaxis para cambiar los valores. Cada elemento hijo debe definir unos LayoutParams que sean apropiados para su padre, aunque se podrían definir diferentes LayoutParams para sus hijos. Todos los viewgroups incluyen anchura y altura. Muchos también incluyen márgenes y bordes. Puedes especificar exactamente la altura y la anchura, hay que pensar que probablemente no se querrá definir esto a menudo. Más a menudo habrá que indicar a la view que tenga las dimensiones del tamaño de su contenedor, o que llegue a ser tan grande como el contenedor le permita.
__________________
jorge
|
Los siguientes 7 usuarios han agradecido a soron su comentario: | ||
|
#2
|
||||
|
||||
__________________
Saludos
Leamos y comentemos... AGRADECER ES GRATIS ;) |
#3
|
||||
|
||||
soron si estas haciendo un simple corta y pega y encima no citas las fuentes estas haciendo algo ilegal, por favor limitate a remitir a los foreros a las paginas de donde copias
Salu2
__________________
"La lectura es el camino al conocimiento" ![]() ![]() ![]() |
#4
|
||||
|
||||
__________________
jorge
|
#5
|
||||
|
||||
En el pasado Mobile World Congress se presentaron varios terminales basados en la plataforma Android, entre ellos HTC Magic y HTC Dream, los terminales que ya están comenzando a distribuir tanto Vodafone como Movistar en nuestro país. Por lo tanto, una vez que tenemos la plataforma disponible, el siguiente paso será aprender a programar aplicaciones para estos terminales. En este curso de programación de aplicaciones para Android, que se compone de dos entregas, vamos a desarrollar un juego, o aplicación, que nos permitirá explorar un buen número de componentes de esta nueva plataforma.
Antes de empezar a programar vamos a preparar nuestro entorno de trabajo y herramientas. Lo primero que necesitamos es el SDK (Kit de Desarrollo de Software) de Android, que contiene las librerías para programar, documentación y códigos de ejemplo. La versión actual (en el momento de escribir este artículo, 1.1_r1) se descarga comprimida en formato ZIP desde developer.android.com/sdk/1.1_r1/index.html. Hay versiones para Windows, Mac OS X y Linux. Una vez descargado lo descomprimimos en cualquier parte de nuestro disco. Una vez hecho esto, vamos a necesitar un IDE (Entorno Integrado de Desarrollo) con el que trabajar cómodamente. La recomendación de Google es Eclipse y es la opción más cómoda, ya que es el entorno para el que Google provee plugins y asistentes que facilitan la tarea, pero cualquier entorno de desarrollo basado en Java, como NetBeans u otros, es perfectamente válido programar. En cualquier caso, hemos de tener en cuenta que la documentación on-line está enteramente basada en el uso de Eclipse, pero también tiene secciones especificas si decidimos optar por otro. Eso sí, todo el contenido está disponible en inglés. Para quienes no lo conozcan, Eclipse es un entorno de desarrollo libre que puede descargarse gratuitamente desde www.eclipse.org/downloads. No vamos a cubrir aquí la instalación de éste, ya que es bastante trivial y también tiene versiones multiplataforma, instalables para Windows, Mac OS X y Linux. El plugin de Eclipse proporcionado por Google para desarrollar aplicaciones para Android se llama ADT (Android Developer Tools) y es sencillísimo de instalar, como todos los plugins de Eclipse. En el menú de ayuda, Help, hay un sub-menú denominado Software Updates (Actualizaciones de Software) y, dentro de éste, dependiendo de la versión de Eclipse, una opción Find and Install (Buscar e instalar) o directamente mediante el menú correspondiente. Sea cual sea la versión, es fácil llegar hasta el sitio donde introducir una dirección de Internet de la que instalar un plugin (Add Site). Por lo tanto, introducimos dl-ssl.google.com/android/eclipse (habremos de probar tanto con HTTP o HTTPS, si alguna da problemas) y seguimos los pasos del asistente (es necesario reiniciar eclipse para completar la instalación). Para que el plugin ADT funcione debemos indicarle dónde está instalado el SDK que descargamos anteriormente. Esto se hace en el menú de preferencias (Ventana » Preferencias en Windows y Linux, Eclipse » Preferencias en Mac OS X). Seleccionamos Android en el panel de la izquierda y configuramos la opción SDK Location navegando por nuestro disco hasta la ubicación del SDK. Ya estamos listos para empezar a programar. Cómo aprender idiomas con el móvil Una de las cosas más frustrantes cuando se aprende un idioma nuevo o se vive en el extranjero es el encontrarnos con palabras que ya hemos visto antes pero no recordamos su significado. Existen aplicaciones para aprender idiomas con juegos de diccionarios genéricos, palabras que tal vez nunca usemos, pero, sería muy útil tener una aplicación en el móvil y aprovechar el camino al trabajo en bus o metro para recordar palabras que ya sabemos que forman parte de nuestro entorno y no queremos volver a olvidar. Podemos introducir palabras a nuestro diccionario, por ejemplo, al leer un libro y encontrar palabras nuevas, ¿de qué sirve enriquecernos leyendo si luego olvidamos las palabras nuevas que aprendemos? Además, resulta que es la aplicación perfecta para cubrir unos cuantos aspectos de la programación de aplicaciones en Android, ya que guardaremos preferencias del usuario, accederemos y modificaremos una base de datos local, importaremos diccionarios desde ficheros de texto, internacionalizaremos la interfaz de usuario, tendremos varias pantallas por las que navegar en nuestra aplicación y guardaremos el estado de nuestra partida si es interrumpida, por ejemplo por una llamada. Por lo tanto, mientras desarrollamos esta aplicación aprenderemos algunas de las características de la plataforma. Creación del proyecto Como cualquier otro proyecto en eclipse, Fichero » Nuevo » Proyecto nos mostrará la lista de tipos de proyectos que podemos crear, y después de haber instalado el plugin ADT debería aparecer Android entre ellos como una de las opciones. El asistente de creación de proyectos nos preguntará por el nombre del proyecto, que es el directorio donde residirá, en nuestro caso IdiomasPCWorld; el nombre del paquete, com.pcworld.idiomas; el nombre de la Activity (veremos después lo que es esto), IdiomasPCWorld; y el nombre de la aplicación, Idiomas PCWorld. Antes de seguir, vamos a comprobar que todo va bien. Para ello, en la pestaña Explorador de paquetes (Package Explorer), seleccionamos con el botón derecho sobre la carpeta del proyecto IdiomasPCWorld, submenú Ejecutar como (Run as), opción Android Application. Esto lanzará el emulador y aparecerá un teléfono móvil con el texto A N D R O I D _. Permanece hay un rato mientras se car ![]() Nuestra aplicación ha quedado ahora instalada en el emulador. Para salir de ella habremos de pulsar en la tecla Home (con forma de casa), que nos llevará a la pantalla de inicio. Si queremos volver a entrar, pulsamos en la parte inferior de la pantalla sobre la pestaña que desplegara el menú, y debería aparecer nuestra aplicación, Idiomas PCWorld con un icono por defecto. Hagamos nuestra aplicación un poco más identificable con un icono personalizado. Para ello creamos nuestro icono de 48 x 48 píxeles, lo llamamos, por ejemplo, icon.png y lo guardamos en la carpeta res/drawable, dentro de nuestro proyecto. Después ejecutamos de nuevo para ver la aplicación en el emulador (esta vez lo podemos hacer desde el botón verde de Play en la barra de herramientas) y, si no habíamos cerrado el emulador, veremos directamente la aplicación. Si lo habíamos cerrado, habrá que esperar de nuevo a que cargue. Salimos al menú principal, desplegamos la pestaña de aplicaciones y allí debería aparecer de nuevo aplicación, esta vez con nuestro reconocible icono. José María Palazón http://www.idg.es/pcworldtech/mostra...cion=seguridad
__________________
jorge
Última edición por soron Día 14/03/10 a las 22:45:24. |
#6
|
||||
|
||||
Si miras los links q te he pasado son tal cual lo q has puesto, puntos y comas...
y los símbolos así  son imágenes... Me da lo mismo espero q después de este curso nos des un diploma de físicos nucleares "mientras se car ![]()
__________________
Saludos
Leamos y comentemos... AGRADECER ES GRATIS ;) Última edición por leon1984 Día 14/03/10 a las 22:53:36. |
Gracias de parte de: | ||
#8
|
||||
|
||||
si si es lo mismo e estado contractando y si es lo mismo pero yo de esa pagina no lo saque
__________________
jorge
|
#9
|
||||
|
||||
Hola
De todos los Eclipse que aparecen en: http://www.eclipse.org/downloads cual es el que hay que bajar?? y el pluging adt?? Saludos Última edición por nam354c Día 15/03/10 a las 02:01:31. |
#10
|
||||
|
||||
Hola
De todos los Eclipse que aparecen en: http://www.eclipse.org/downloads cual es el que hay que bajar?? y el pluging adt?? Saludos ![]() http://www.eclipse.org/downloads/dow...-SR2-win32.zip
__________________
jorge
|
#11
|
||||
|
||||
De todos modos lo resumo un poquito más aqui ok
Configuración equipoActualización Android SDK and ADV Manager: 1. Window » Android SDK y ADV Manager » Virtual Devices. 2. Window » Android SDK y ADV Manager » Intalled Packages » Update All http://developer.android.com
__________________
jorge
|
#12
|
||||
|
||||
como vamos chicos que parece que no comentamos nada.. no teneis dudas al recpecto vamos que pronto vamos con la 2ª entrega del curso ok.. si quereis si no no subo mas ok
__________________
jorge
|
#13
|
||||
|
||||
(por cierto creo q la foto de tu perfil es muy grande para las normas del foro)
__________________
Saludos
Leamos y comentemos... AGRADECER ES GRATIS ;) Última edición por leon1984 Día 27/03/10 a las 05:44:36. |
#14
|
||||
|
||||
ok leon ahora lo miro.. ahh el titulo sera convalidado por el ministerio de educacion ja ja ja
__________________
jorge
|
#17
|
||||
|
||||
__________________
jorge
|
#18
|
||||
|
||||
Estoy buscando un programa para calcular el tiempo de exposición en fotografía nocturna, modo bulb, he preguntado por el foro y me han dicho que Shutter speed hace lo que yo quiero pero no está en el market de la tattoo.
|
#19
|
||||
|
||||
pues nose tio metete por esta pagina http://es.androlib.com/android.appli...peed-jpBA.aspx ya me comentas ok
__________________
jorge
|
|
#20
|
||||
|
||||
Te lo agradezco pero el barcode scanner me detecta el código QR y cuando le digo abrir me re-dirije al market y ma sale que no se encuentra la aplicación..... por eso necesito que alguien la suba a un servidor externo como megaupload.
|
![]() |
![]() |
||||||
|
Herramientas | |