Cómo crear una app simple en ANDROID Con este tutorial podrás

Cómo crear una app simple en ANDROID
Con este tutorial podrás aprender a cómo empezar a crear apps en Android, empezaremos con
algo muy simple para que poco a poco vayas conociendo.
Aprenderás cómo crear un proyecto Android y ejecutar una versión depurarle de la aplicación. También
aprenderás algunos de los fundamentos de diseño de aplicaciones para Android, incluyendo cómo construir
una interfaz de usuario simple y manejar la entrada del usuario.
Antes de empezar esta tutorial, asegúrate de tener su entorno de desarrollo para este compromiso.
Necesitas:



Descarga el SDK de Android.
Instalar el ADT para Eclipse (si va a utilizar el IDE de Eclipse).
Descargar las últimas herramientas del SDK y plataformas usando el Administrador del SDK.
Nota: Asegúrate de instalar las versiones más recientes que el plugin ADT y el SDK de Android
antes de comenzar este tutorial. Los procedimientos descritos en este tutorial no pueden aplicarse a
las versiones anteriores.
Si aún no has hecho estas tareas, comienza por descargar el SDK de Android y siguiendo los pasos de
instalación. Una vez que hayas terminado la instalación, estás listo para comenzar esta clase.
Esta clase utiliza un formato de tutorial que se construye de forma incremental una pequeña aplicación para
Android que te enseña algunos conceptos fundamentales sobre el desarrollo de Android, por lo que es
importante que sigas cada paso.
Creando un Proyecto de Android
Un proyecto Android contiene todos los archivos que componen el código fuente de su aplicación Android.
Las herramientas del SDK de Android hacen que sea fácil para iniciar un nuevo proyecto Android con un
conjunto de directorios y archivos de proyecto por defecto.
Esta lección muestra cómo crear un nuevo proyecto, ya sea usando Eclipse (con el plugin ADT) o el uso de
las herramientas del SDK desde una línea de comandos.
Nota: Ya debes de tener instalado todo lo necesario.
Creando un Proyecto con Eclipse
1. Dale click
2.
3.
a Nuevo en la barra de herramientas.
En la ventana que aparece, abra la carpeta de Android, Android seleccione Proyecto de aplicación y
haga clic en Siguiente.
Rellene el formulario que aparece:







4.
Application Name es el
nombre de la aplicación que
aparece a los usuarios. Para este
proyecto, utilice " Mi Primera
Aplicación. "
Proyect Name es el nombre del
directorio del proyecto y el
nombre visible en Eclipse.
Package Name es el espacio de
nombres de paquete para su
aplicación (siguiendo las mismas
reglas que los paquetes en el
lenguaje de programación Java).
Su nombre de paquete debe ser
único en todos los paquetes
instalados en el sistema Android.
Por esta razón, generalmente es
mejor si se utiliza un nombre que
comienza con el nombre de dominio inverso de su organización o entidad editora. Para este
proyecto, se puede usar algo como " com.example.myfirstapp. " Sin embargo , no se puede
publicar tu aplicación en Google Play con el espacio de nombres " com.example "
Minimum Required SDK es la versión más baja de Android que admite su aplicación,
indican usando el nivel de API. Para apoyar a tantos dispositivos como sea posible, debe
establecer la versión disponible más baja que le permite a su aplicación para proporcionar
su conjunto de características del núcleo. Si es posible alguna de las funciones de su
aplicación sólo en las nuevas versiones de Android y no es crítica para el conjunto de
características del núcleo de la aplicación, se puede activar la función sólo cuando se
ejecuta en las versiones que lo apoyan .Deja este conjunto en el valor predeterminado para
este proyecto.
Target SDK indica la versión más alta de Android (también utilizando el nivel API) con la
que ha probado con su solicitud.
A medida que nuevas versiones de Android disponibles, usted debe probar su aplicación en
la nueva versión y actualizar este valor para que coincida con el último nivel de API con el
fin de aprovechar las nuevas características de la plataforma.
Compile With es la versión de la plataforma contra la cual usted compilar su aplicación.
De forma predeterminada, se establece en la última versión de Android disponible en el
SDK. (Debe ser Android 4.1 o superior, si usted no tiene una versión de tal disposición,
debe instalar uno usando el SDK Manager). Usted todavía puede construir su aplicación
para apoyar a las versiones anteriores, pero establecer el destino de generación a la última
versión le permite habilitar nuevas características y optimizar su aplicación para una gran
experiencia de usuario en los últimos dispositivos.
Theme Especifica el estilo de la interfaz de usuario de Android para solicitar su aplicación.
puedes dejar esto solo.
En la siguiente pantalla para configurar el proyecto, deje las selecciones predeterminadas y haga clic
en Siguiente.
5. En la siguiente pantalla puede ayudar a crear un icono de lanzador para su aplicación.
Puede personalizar un icono de varias maneras y la herramienta genera un icono para todas las
densidades de pantalla. Antes de publicar su aplicación, usted debe asegurarse de que su icono
cumpla con las especificaciones definidas.
Haga clic en Siguiente.
6. Ahora usted puede seleccionar una plantilla de actividad desde el que comenzar a construir su
aplicación.
Para este proyecto, seleccione BlankActivity y haga clic en Siguiente.
7. Deje todos los detalles de la actividad en su estado predeterminado y haga clic en Finalizar.
Su proyecto Android es ahora una aplicación básica " Hello World " que contiene algunos archivos por
defecto.
Crear un proyecto con herramientas de línea de comandos
Si usted no está utilizando el IDE de Eclipse con el plugin ADT, en su lugar puede crear su proyecto
utilizando las herramientas del SDK desde una línea de comandos:
Cambie los directorios en herramientas / ruta del SDK de Android.
Ejecutar:
android list targets
Imprime una lista de las plataformas Android disponibles que ha descargado para su SDK. Encuentra la
plataforma contra el que quieres compilar tu aplicación. Anote el ID de destino. Le recomendamos que
seleccione la versión más alta posible. Usted todavía puede construir su aplicación para apoyar a las versiones
anteriores, pero establecer el destino de generación a la última versión le permite optimizar su aplicación para
los dispositivos más recientes.
Si no hay objetivos enumerados, es necesario instalar algunos usando la herramienta Administrador de
Android SDK.
3. Ejecutar:
android create project --target <target-id> --name MyFirstApp \
--path <path-to-workspace>/MyFirstApp --activity MainActivity \
--package com.example.myfirstapp
Reemplace <target - id> con un id de la lista de objetivos (del paso anterior) y vuelva a colocar <path-toworkspace> con la ubicación en la que desea guardar sus proyectos Android.
Su proyecto Android es ahora una aplicación básica " Hello World " que contiene algunos archivos por
defecto.
Corriendo tu Aplicación
Ya teniendo nuestro programa base de “Hello World”, ya podemos correrlo para probar que todo
funcione bien.
Cómo se ejecuta la aplicación depende de dos cosas:
Si tienes un dispositivo con Android real o si estás usando Eclipse. Esta lección muestra cómo instalar y
ejecutar su aplicación en un dispositivo real y en el emulador de Android, y en ambos casos, ya sea con
Eclipse o las herramientas de línea de comandos.
Antes de ejecutar la aplicación, usted debe estar enterado de algunos directorios y archivos en el proyecto
Android
AndroidManifest.xml
El archivo de manifiesto describe las características fundamentales de la aplicación y define cada uno de sus
componentes.
Uno de los elementos más importantes que su manifiesto debe incluir es el < uses - sdk > element. Esto
declara la compatibilidad de su aplicación con diferentes versiones de Android utilizando los atributos
android: minSdkVersion y Android: targetSdkVersion. Para su primera aplicación, que debería tener este
aspecto:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" ...
>
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="19" />
...
</manifest>
Correr tu programa en un dispositivo real
Si tienes un dispositivo con Android verdadero, así es como se puede instalar y ejecutar su aplicación:
Conecte su dispositivo a su equipo de desarrollo con un cable USB. Si está desarrollando en Windows, puede
que tenga que instalar el controlador USB adecuado para su dispositivo. Para ayudar a los conductores de la
instalación, consulte el documento de los controladores USB OEM.
Habilitar la depuración USB del dispositivo.
En la mayoría de los dispositivos con Android 3.2 o mayor, usted puede encontrar la opción de Ajustes>
Aplicaciones> Desarrollo.
En Android 4.0 y más reciente, está en Ajustes> Opciones de Desarrollador.
Nota: En Android 4.2 y posteriores, opciones para desarrolladores está oculta de manera predeterminada. Para
que esté disponible, vaya a Ajustes>.
Para correr tu aplicación en Eclipse
1. Abre algún archive de tus proyectos y dale click en correr
de la barra de herramientas
En el Ejecutar como ventana que aparece, seleccione Aplicación para Android y haga clic en
Aceptar.
Eclipse instala la aplicación en su dispositivo conectado y lo inicia.
O para ejecutar su aplicación desde una línea de comandos:
Cambie los directorios a la raíz de su proyecto Android y ejecutar:
ant debug
Asegúrese de que el directorio / plataforma de herramientas SDK de Android está incluido en la variable de
entorno PATH, entonces ejecutar:
adb install bin/MyFirstApp-debug.apk
En su dispositivo, busque MyFirstActivity y abrirlo.
Correr en el emulador
Ya sea que esté usando Eclipse o la línea de comandos, para ejecutar la aplicación en el emulador es necesario
crear primero un dispositivo virtual Android (AVD). Un AVD es una configuración de dispositivos para el
emulador de Android que permite modelar diferentes dispositivos.
Para crear una AVD:
1.
Inicie el Administrador de dispositivos
Android Virtual :
2. En Eclipse, haga clic en Administrador de
dispositivos Android Virtual de la barra de
herramientas.
Desde la línea de comandos, cambie al directorio < sdk
> / tools / y ejecutar:
android avd.
3.
4.
5.
6.
7.
En el panel Administrador de dispositivos Android Virtual, haga clic en Nuevo.
Rellene los detalles de la AVD. Darle un nombre, una plataforma de destino, un tamaño de la tarjeta
SD, y una piel (HVGA es por defecto).
Haga clic en Crear AVD.
Seleccione el nuevo AVD desde el Administrador de dispositivos Android Virtual y haga clic en
Inicio.
Una vez iniciado el emulador arriba, desbloquear la pantalla del emulador.
Para correr tu aplicación en Eclipse
Abre algún archivo de tus proyectos y dale click en correr
de la barra de herramientas
En Correr como la ventana que aparece, seleccione Aplicación para Android y haga clic en Aceptar.
Eclipse instala la aplicación en su AVD y la inicia.
O para ejecutar su aplicación desde la línea de comandos:
Cambie los directorios a la raíz de su proyecto Android y ejecutar:
ant debug
Asegúrese de que el directorio / plataforma de herramientas SDK de Android está incluido en la variable de
entorno PATH, entonces ejecutar:
adb install bin/MyFirstApp-debug.apk
En su dispositivo, busque MyFirstActivity y abrirlo.
Creando una simple interface de usuario
Crear un Layout linear
Abre el archivo fragment_main.xml del directorio res/layout/
Nota: En Eclipse, cuando se abre un archivo de diseño, se intenta por primera mostrará el editor gráfico
Diseño. Se trata de un editor que le ayuda a crear diseños utilizando herramientas WYSIWYG. Para esta
lección, usted va a trabajar directamente con el XML, por lo que, en la ficha fragment_main.xml en la parte
inferior de la pantalla para abrir el editor de XML
La plantilla BlankActivity que eligió cuando creó este proyecto incluye el archivo fragment_main.xml con un
root view RelativeLayout y un child view TextView.
En primer lugar, eliminar < TextView > y cambiar el < RelativeLayout > por < LinearLayout >. Luego se
agrega el atributo android: orientation y ponlo en " horizontal”. El resultado es el siguiente:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
</LinearLayout>
LinearLayout es un grupo de vista (una subclase de ViewGroup) que establece los puntos de child view, ya
sea en posición vertical u horizontal, según lo especificado por el atributo android: orientación. Todos los
hijos de LinearLayout aparecen en la pantalla en el orden en que aparece en el XML.
Los otros dos atributos, android: layout_width y Android: layout_height, son necesarios para todos los puntos
de vista con el fin de especificar su tamaño.
Debido a que el LinearLayout es la root view en el diseño, se debe llenar el área completa de pantalla que está
disponible a la aplicación mediante el establecimiento de la anchura y la altura de " match_parent”. Este valor
se declara que la visión debería ampliar su anchura o la altura para que coincida con la anchura o la altura de
la vista padre.
Añadir un TextField
Para crear un campo de texto editable por el usuario, agregar un < EditText > elemento dentro de la <
LinearLayout >.
Como cada objeto View, debe definir ciertos atributos de XML para especificar las propiedades del objeto
EditText. He aquí cómo usted debe declararlo en el interior del elemento < LinearLayout >:
<EditText android:id="@+id/edit_message"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="@string/edit_message" />
Añadir recursos de String
Cuando necesite añadir texto en la interfaz de usuario, siempre se debe especificar cada string como un
recurso. Los recursos de String permiten gestionar todos los textos de interfaz de usuario en un solo lugar, lo
que hace que sea más fácil de encontrar y de modificar el texto. Externalizar los Strings también le permite
localizar su aplicación a diferentes idiomas, proporcionando definiciones alternativas para cada recurso de
String.
Por defecto, su proyecto Android incluye un archivo de recursos de string en res / valores / strings.xml. Añade
un nuevo string denominado " edit_message " y establecer el valor a " Enter a Message " (Usted puede
suprimir el string " hello_world “. )
Mientras que usted está en este archivo, añada también un string " Enviar " para el botón que pronto añadirás,
llamado " button_send”.
El resultado para strings.xml se ve así:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">My First App</string>
<string name="edit_message">Enter a message</string>
<string name="button_send">Send</string>
<string name="action_settings">Settings</string>
<string name="title_activity_main">MainActivity</string>
</resources>
Añadir un Botón
Ahora agregue un < Button> al Layout, inmediatamente después del elemento < EditText >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_send" />
La altura y la anchura se ajustan a " wrap_content " por lo que el botón es sólo tan grande como sea necesario
para ajustar el texto del botón. Este botón no necesita el atributo android: id, ya que no se hace referencia
desde el código de actividad.
Hacer que el Input Box rellene el Ancho de la pantalla
El Layout está diseñado de modo que tanto el EditText y los widgets del botón son sólo tan grande como sea
necesario para adaptarse a su contenido, como se muestra en la figura.
Esto funciona bien para el botón, pero no así para el campo de texto, ya que el usuario puede escribir algo más
largo. Por lo tanto, sería bueno para llenar el ancho de la pantalla con el text field sin usar.
Usted puede hacer esto dentro de un LinearLayout con la weight property que se puede especificar mediante
el atributo android: layout_weight.
El valor de peso es un número que especifica la cantidad de espacio que queda cada vista debe consumir, en
relación con la cantidad consumida por sibling views
El peso por defecto para todas las vistas es 0 , por lo que si se especifica algún valor de peso superior a 0 a un
solo punto de vista, entonces esa vista llena cualquier espacio que queda , después de que todas las vistas se
les da el espacio que requieren .
Así que, para llenar el espacio restante en su diseño con el elemento EditText, le dan un peso de 1 y dejar el
botón sin peso.
<EditText
android:layout_weight="1"
... />
Con el fin de mejorar la eficiencia del layout cuando se especifica el peso, usted debe cambiar el ancho del
EditText a cero (0DP) .Ajustar la anchura a cero mejora el rendimiento del layout porque el uso de "
wrap_content " como anchura requiere del sistema para calcular una anchura que es en última instancia
irrelevante porque el valor de peso requiere otro cálculo de ancho para llenar el espacio restante.
<EditText
android:layout_weight="1"
android:layout_width="0dp"
... />
Así es como debe de quedar tu archive de layout
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<EditText android:id="@+id/edit_message"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:hint="@string/edit_message" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_send" />
</LinearLayout>
Este layout se aplica por la clase Activity por defecto que las herramientas del SDK generan al crear el
proyecto, por lo que ahora puede ejecutar la aplicación para ver los resultados
Para correr tu aplicación en Eclipse
Dale click en correr
de la barra de herramientas
O para ejecutar su aplicación desde la línea de comandos:
Cambie los directorios a la raíz de su proyecto Android y ejecutar:
ant debug
adb install bin/MyFirstApp-debug.apk
.