36

Programaci贸n Android II-Hola Mundo

Publicado por el .

holamundo 478x336 Programaci贸n Android II Hola Mundo

En el post anterior, se explicó como instalar y configurar adecuadamente el entorno de desarrollo Android para realizar nuestras aplicaciones Android en Windows. Ahora, vamos a  empezar por como crear un proyecto, definir las partes más importantes de su estructura y el popular “Hola Mundo”.

Para empezar un nuevo proyecto Android, seleccionamos File/New/Other/Android Proyect

nuevoproyecto 478x448 Programaci贸n Android II Hola Mundo



Pulsamos en Next, y nos aparecerá una ventana emergente, donde:

  • Project name: Es el nombre que queramos darle a nuestro proyecto
  • Package name: Deberá de ser un nombre único. Google sugiere que como base pongas: nombreaplicacion.nombredesarrollador
  • Activity name: El nombre de la clase que implementará la actividad.
  • Application name: El nombre que aparecerá al usuario.

También seleccionaremos en que versión de Android queremos trabajar. Es más lógico escoger la 1.6 ya que funcionaría para todas las versiones posteriores.

Posteriormente vemos como se crea el proyecto en la barra de la derecha. Si lo abrimos podemos observar todo el esqueleto de la aplicación y cada una de sus partes.

Podemos definir que Android utiliza un motor Java de fondo (con su API propia pero muy parecida a java), y el entorno gráfico que utiliza XML.Un esquema podría ser este:

Motor Java<—>Interfaz Xml<—>Usuario

Partes importantes de una aplicación Android:

  • AndroidManifest: Es un archivo de tipo XML, algo así como un indice de la aplicación donde definimos la versión de nuestra aplicación, los activities de los que consta y los permisos que debe de tomar la aplicación (conexión a internet, mensajeria, contactos, etc).

  • Activities: Se define por si misma como la ventana que aparece para el usuario. Por defecto se crea una pero si queremos desarrollar otras ventanas que interactuen con el usuario (al pusar un botón por ejemplo), debemos de crearlas aparte y definirlas en el manifest.
  • Res/Layout/Main.Xml: Define toda la interfaz gráfica de la aplicación, por defecto crea la inicial con un layout (capa) simplón.

  • Res/Values/Strings.Xml: Define un cadena de caracteres a ser llamada desde nuestra aplicación Java.Resulta mas útil que estar escribiendo variables en la propia aplicación. Por defecto nos crea un string que resuelve el nombre de la aplicación.

  • Res/Drawable: Aquí encontramos todos los iconos e imágenes que vamos a usar en nuestra aplicación.
  • Src/Package/Aplicación.java: Todo el código en Java de nuestra aplicación.

Ahora vamos a proceder a mostrar un “Hola Mundo” como texto en nuestra aplicación.

Para ello, vamos al fichero de strings.xml y definimos:

<string name=”hello”> HolaMundo!</string>

Vamos al fichero de interfaz, que como ya sabemos es el main.xml:

<?xml version=”1.0″ encoding=”utf-8″?>

<LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”

android:orientation=”vertical”

android:layout_width=”fill_parent”

android:layout_height=”fill_parent”

>

<TextView

android:layout_width=”fill_parent”

android:layout_height=”wrap_content”

/>

</LinearLayout>

Como vemos, en la cabecera se define el metadata y la codificación que vamos a usar (utf8). Después viene seguido el tag <layout> que encierra la capa principal de la aplicación. Quien tenga nociones de html y xml no tendrá mucha dificultad de la idea principal.

android:orientation=”vertical”
android:layout_width=”fill_parent”
android:layout_height=”fill_parent”

Define la orientación de la capa( y todo lo que haya dentro), así como la anchura y la altura que en este caso con la propiedad fill_parent toma todo el espacio posible. Dentro de lo que es la propia capa encontramos:

<TextView
android:layout_width=”fill_parent”
android:layout_height=”fill_parent”
android:text=”@string/hello”
/>
Nos dice principalmente que muestra texto y su orientación con respecto a la capa. La propiedad android:text es el nombre de la cadena que va a mostrar. En este caso llama a la cadena @string/hello que definimos anteriormente en strings.xml que es “hello”.
Vamos a ejecutarlo dándole a Run, y esperamos que arranque la máquina virtual.

En el próximo tutorial, crearemos una aplicación interactiva, creando botones, campos y un activity nuevo.


36 comentarios

  1.   Colymore dijo

    Simplemente genial.

  2.   ola? dijo

    3 puntos colega! ^ ^ de lujo

  3.   rikimm dijo

    hola esta muy buena esa idea de ense帽ar a programar en android pero creo que primero deverias hacer es ense帽ar los tipo de codigos que utiliza por decirlo asi un glosario de todos los terminos que utiliza android para que tengan una idea muy clara y sepan de que se esta hablando y ya asi hacer el hola mundo o la inter con objetos etc….

    1.    Jadriancz dijo

      a quien no le parece buena tu idea pero la realidad no es asi aun a la fecha falta mucha documentaci贸n para desarrollo y no hay de otra que se autodidactas si te gusta el desarrollo y mas el android saludos:

  4.   L3st dijo

    La API de Android y de Java(sobre todo Java), es enorme.Y estoy hablando de miles de funciones diferentes.Estos son peque帽os tutoriales ense帽ando lo m谩s b谩sico, definiciones,funciones y como empezar a construir una aplicaci贸n sencillita.El c贸digo aqu铆 mostrado no tiene ning煤n misterio.En otro post ense帽ar茅 como se usa la API, buscar las funciones e implementarlo al gusto(eso ya cada cual).
    Tras 7 a帽os programando,aprend铆 que la filosof铆a de la programaci贸n es buscarse la vida 馃槈 Un Saludo

  5.   T谩rek dijo

    …y una de las cosas que m谩s ayudan son estos peque帽os tutoriales que se curra la gente. Buen trabajo L3st!

    Un peque帽o detalle: has dicho que pongamos Anroid 2.2 como versi贸n de Android, y que eso funcionar铆a con las versiones anteriores.

    Esto es al rev茅s. Si compilas para 2.1, funcionar谩 en 2.2, pero NO en 1.6.
    La versiones m谩s nuevas de Android pueden ejecutar aplicaciones para versiones anteriores (backwards compatibility), pero no al rev茅s. Ten en cuenta que la API es cada vez mayor, y que 2.2 tiene much铆simas m谩s funciones que 1.5 o 1.6.

    Por qu茅 no poner 1.5 como versi贸n siempre?
    – Puedes querer usar funciones del sistema operativo que 1.5 no soporta
    – Hay unas peque帽as incompatibilidades en la resoluci贸n de pantalla entre 1.5 y versiones posteriores que te pueden dar problemas, pero es una historia un poco larga para poner aqu铆.

    Afortunadamente, casi todos tienen ya 2.1 (quedan las pobres HTC Tattoo, dejadas de la mano de dios). Si no necesitas funciones de API de la 2.1, lo mejor es compilar para 1.6.

    Un saludo!

  6.   L3st dijo

    Cierto, gracias T谩rek , quer铆a decir justo a eso, y se me escap贸 el gazapo
    Un saludo!

  7.   Manu dijo

    Tras el primer post de programaci贸n en Android, esperaba este como agua de Mayo y esperar茅 con impaciencia todos los siguientes. Explicar谩s como hacer una interfaz gr谩fica?

    Enhorabuena!

  8.   L3st dijo

    Claro! A ver si este fin de semana tengo hueco

  9.   Cesar dijo

    Me encanta el dise帽o gr谩fico y combinarlo con programaci贸n es una maravilla voy a aprender programaci贸n de android si o si …..!!!! sois los mejores solo s el problema es k tengo k esperar a mi imac…. jejeje saludos espero con ansias los dem谩s tutoriales

  10.   ferf dijo

    Hola buenos dias, estoy empezando a programar para android y me surge una duda.

    Cada vez que hago Run, se me abre la ventana del emulador y me sale una pantalla que pone A N D R O I D_ en cuenta del Hola Mundo…

    Teneis alguna idea de porque puede ser?

    Un saludo y gracias

  11.   ferf dijo

    jeje no he dicho nada, no le dejaba tiempo suficiente. Pense que se ejecutaba directamente la aplicacion..

    Saludos!

  12.   Banshi dijo

    Buenas!
    Tengo un problema, cada vez que le doy a crear un proyecto me salen 2 errores
    -Project “nombre” is missing required source folder: ‘gen’
    -The project cannot be built until path errors are resolved.

    Alguien me puede ayudar a solucionarlo, he seguido los paso del primer manual y creo que lo he configurado todo bien, gracias.

    Saludos.

  13.   L3st dijo

    Eso es porque no te ha generado bien el proyecto. F铆jate bien, si has puesto todo bien, y cuando lo crees,espera un ratillo a ver si es que est谩 tardando y el eclipse se te adelanta.Alguna vez me ha pasado

    1.    Syncrom dijo

      脕lvaro, me gustar铆a poder tratar contigo algunos temas. 驴Podr铆as visitar nuestra web, http://www.syncrom.com, y rellenar el formulario de contacto, y as铆 no damos correos en el foro?

      Gracias, y un saludo,

      Grupo SYNCROM.

  14.   Diego dijo

    Buenas. Estoy muy interesado en aprender y me he encontrado con esto..si..un poco tarde, pero mas vale tarde q nunca.

    He hecho todo segun se indica en el tutorial pero no me sale el hola mundo, en su lugar me sale ANDROID_

    que he hecho mal???

  15.   homerosawa dijo

    esta bien, que bueno es para alguin nuevo que quiere apender

  16.   Rafa dijo

    Pue sigo por aqu铆 flipando de lo bien explicado que est谩… tengo ganas de ver m谩s cosas para ir haci茅ndome a la 铆dea de las posibilidades y complicaciones.
    Muchas gracias.
    Un saludo,
    Rafa

  17.   Andres dijo

    La verdad esta muy bueno el tuto, lastima que no se si no me funciona o segun lei arriba demora mucho en cargar, cuando corro el emulador me sale un android_ y despues de ahi arranca otra imagen de android con letra mas linda y con un brillo que va de izquierda a derecha, pero nunca arranca mi codigo, o por lo menos no en estos casi 5 min que lo llevo ejecutando…. que estoy haciendo mal?

    desde ya muchas gracias.

    1.    Rafa dijo

      A mi me pasa lo mismo, no se si est谩 intentando arrancar o si no lanza la aplicaci贸n.

    2.    Kike dijo

      Me pasa lo mismo!

  18.   Omar dijo

    Ke tal soy nuevo en esto, y me parece muy buen post para los que queremos inicar, thansk bro

  19.   davidjb dijo

    muy buena estructura al momento de explicar. muy facil de entender

  20.   dexter_one dijo

    Simplemente … Muy bueno. Se agradece tu aporte!

    Bytez!

  21.   lean dijo

    Realmente son de muchisima ayuda, estos dos post… pero veo que hace 1 a帽o del segudo y que yo sepa el ultimo…

    Seguiras completando o hasta aqui se llego?

    Muchas gracias

  22.   mauroya dijo

    Hola estoy comenzando a programar Android y es interesante ya que es muy parecido Java pero me marca un error en Windows al crear el Wizard y es
    “[2011-07-29 10:13:19 – Dex Loader] Unable to execute dex: wrapper was not properly loaded first
    [2011-07-29 10:13:19 – HolaMundo] Conversion to Dalvik format failed: Unable to execute dex: wrapper was not properly loaded first”
    pero en ubuntu me resulta genial,

  23.   Mirna dijo

    Muy bn! sigue asi

  24.   mauroya dijo

    Amigos ya lo solucione el error se provoca por que al ejecutar el directorio del sdk no debe tener espacios asi que lo copie al c:\sdkandroid y funciono genial cualquier novedad las comunicare gracias

  25.   Noe Jafir dijo

    Ola me gustaria saber si alguien me pudiera resolver este error que me sale al correr la aplicacion
    [2011-09-02 11:32:29 – Emulator] invalid command-line parameter: Files.
    [2011-09-02 11:32:29 – Emulator] Hint: use ‘@foo’ to launch a virtual device named ‘foo’.
    [2011-09-02 11:32:29 – Emulator] please use -help for more information

  26.   Anonimo dijo

    El error que comentas creo que se debe a la ruta donde tienes instalada android-sdk debido a que contiene espacios…

    Para ejecutar el emulador tendras que crear el AVD (te recomiendo Android 1.5 al principio) y despu茅s de que te salga el error que comentas, sin cerrar nada, ejecutar lo siguiente:

    C:\Program Files (x86)\Android\android-sdk\tools>emulator-arm.exe @nombre
    Donde C:\Program Files (x86)\Android\android-sdk\tools es el directorio donde tienes el android-sdk
    emulator-arm.exe: es el emulador que visualiza el m贸vil
    @nombre: es el nombre que le has puesto al AVD

    Espero haberte ayudado, un saludo.

  27.   nach dijo

    Buenas. Por qu茅 cuando lanzo para visualizar el hola mundo, se queda parpadeando un texto en el emulador que pone android y no hace nada??? Muchas Gracias. y gran gran tuto!

  28.   L3st dijo

    Cuando sale el logo de Android es que est谩 cargando el emulador.El tiempo depende de la potencia de tu m谩quina. Saludos

  29.   meduag dijo

    Espero las proximas entregas de este tuto, simplemente buenisimooooo… un saludo desde los brasiles

  30.   Lsdany dijo

    Buenisimo el tut… entendible de inicio a fin… solo que ahora tengo un problema :S cuando corro mi avd no me aparece la parte del teclado… he probado con distintas versiones, y cuando arranco en start en el manager… solo aparece la pantalla de android “cargando” de igual modo cuando trato de correr el “hola mundo” gracias por su ayuda…

    1.    Lsdany dijo

      solucionado… jajaja

  31.   Anon dijo

    Muchisimas gracias por los tutoriales, no soy muy de felicitar y tal, pero de verdad es tan facil de entender que me sentia “obligado” a felicitarte

Escribe un comentario