Archive

Archive for the ‘Android Sdk’ Category

T02.- Mi Primera Aplicación Android – Uso de editText, Botones y MessageBox

29 agosto, 2012 1 comentario

Me gusta comenzar por el principio :D, por lo que lo primero que vería nuestro vendedor seria el login, comencemos por allí :D, algo así estimo que debería quedar…

No es mas que una ventana de login muy simple, donde nos aparecerá el logo de la aplicación, un campo para introducir el nombre del usuario, en este caso sera una cédula y un botón de aceptar, esto es realmente simple, y básico, así no debería hacerse un login, deberíamos pedir password y validarlo contra una base de datos y eso, pero por ahora esto nos sera suficiente.

Para crear esta interfaz vamos a utilizar 4 elementos:

  • ImageView
  • TextView
  • EditText
  • Button

Y obtendremos algo como esto

Ahora lo q vamos a hacer es muy simple, el valor introducido lo tomamos y lo mostramos en un alert box (esto para saber que estamos leyendo bien el dato.

La primera pregunta que nos viene a la mente es ¿Donde Programo el botón?

Pero vamos hagamos las cosas en orden, lo primero que recomiendo y no es obligatorio es cambiar las ID de los elementos de la interfaz de usuario, ya que nuestro Eclipse las nombre como “button1”, “textView1” y muchas veces cuando tenemos muchos elementos en la UI, estos nombres no nos dicen absolutamente nada, por lo que lo primero es cambiar estos ID, solo debemos acceder así:


Clic Derecho sobre el elemento -> ChangeID (Menú Contextual)

En mi caso, verán a lo largo del desarrollo que estaré mis ID tienen cierto patrón y es algo como:

abreviaturatipoelemento_NombreEnIngles

Siempre es bueno tener un Estándar de como codificar los elementos para tener un orden en el desarrollo.

La primera pregunta es donde capturamos el eventos clic del botón deseado, en Android es llamado OnClickListener, esto lo crearemos en la actividad principal, en este caso sera: PrincipalActivity.java la cual nos trae el siguiente codigo:

package com.pedidos.oserpa;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class PrincipalActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.principal);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.principal, menu);
        return true;
    }
}

Debemos importar algunas librerías adicionales para poder activar el escuchador de eventos en nuestra aplicación.

import android.view.View;
import android.widget.Button;

Ahora solo falta implemente los metodos para que sea capturado el evento click.. quedando algo asi…

package com.pedidos.oserpa;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

public class PrincipalActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.principal);
        
        final Button btn_pedido = (Button) findViewById(R.id.bt_Acept);
        btn_pedido.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
            	MessageBox("Prueba");
            }
        });
        
    }

    public void MessageBox(String message){
        Toast.makeText(this,message,Toast.LENGTH_SHORT).show();
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.principal, menu);
        return true;
    }
}

Con esto, ya vemos como podemos mostrar un mensaje, pero no es lo que queremos al final, al menos deberíamos capturar el código, y mostrarlo en un MessageBox…

package com.pedidos.oserpa;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class PrincipalActivity extends Activity {
	EditText codigo;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.principal);
        
        codigo = (EditText)findViewById(R.id.et_CodeSeller);

        final Button btn_pedido = (Button) findViewById(R.id.bt_Acept);
        btn_pedido.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
            	String str = codigo.getText().toString();
            	MessageBox(str);
            }
        });
        
    }

    public void MessageBox(String message){
        Toast.makeText(this,message,Toast.LENGTH_SHORT).show();
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.principal, menu);
        return true;
    }
}

Por ahora esto es suficiente, podemos seguir jugando un rato esto que hemos aprendido, agregar mas editText, mas botones, en fin… hacer mas operaciones con botones y texto, al final cualquier aplicación se basa en este evento… Evento Clic.

No olvides visitar el repositorio para revisar las modificaciones al código
.

T01.- Mi Primera Aplicación Android: Creando un Proyecto Android y un Dispositivo Virtual

25 agosto, 2012 1 comentario

El primer paso para crear una aplicación en Android valiéndose de su SDK + Eclipse que hace tiempo explique como realizarlo (aquí). y bueno en el Post anterior explique un poco las razones de esta serie de tutoriales y de que se tratara la aplicación que vamos a desarrollar, es importante que cualquier duda o sugerencia la haga vía comentarios en este articulo… bueno comenzamos.

1.-  Crear el Proyecto Android

2.- Crear el Proyecto Android

En la ventana que se nos presenta, debemos indicar el nombre de la Aplicación, Proyecto y empaquetado (este es como el S.O Android identificara el proceso)

Luego debemos seleccionar cual sera el la versión del SDK que usaremos para nuestro desarrollo, particularmente recomiendo si la aplicación no va a ser algo DEMASIADO ESPECIFICA usar la 2.3.3 o API10, ya que esta es la versión mas difundida globalmente (Fuente en Open Signal Maps)

Y no esta de mas hacer check para crear un Icono de la Aplicación.

3.- Configurar icono para el Launcher

Aqui podremos ajustar el icono de nuestra aplicación, si tienes problemas de creatividad para desarrollar tu icono, seguramente en iconfinder encontraras la inspiración necesaria.

Primero podremos seleccionar entre una imagen, un clipart o  solamente texto, agregarle un fondo, posicionarlo y otros detalles..

Si se preguntan que es ldpi, mdpi, hdpi y xdpi es y para ponérselos simple es una relación entre resolución y densidad…

Proporción base: 480*800

  • ldpi = 0.75 = 360*600
  • mdpi = 1 = 480*800
  • hdpi = 1.5 = 720*1200
  • xdpi = 2 = 960*1600 (sin apenas uso)

Proporción base: 320*480

  • ldpi = 0.75 = 240*360
  • mdpi = 1 = 320*480
  • hdpi = 1.5 = 480*720
  • xdpi = 2 = 640*960

Si quieren mas información sobre las resoluciones no dejen de leer esto Supporting Multiple Screens

3.- Crear activitiy

El concepto es algo complicado, así que voy a hacer un extracto de la gente de nosolounix para no estar inventando teoría que no se :D.

La clase “Activity”, esta clase es la base de cualquier aplicación Android con interfaz de usuario, es decir, si tiene interfaz de usuario tendrá al menos una clase Activity, o más bien una clase que hereda de “Activity”.

Por lo tanto, podemos resumirlo en que cada Activity está relacionada con un pantalla visible. Una aplicación puede tener más de una pantalla visible, cada una muestra una IU y responde a eventos iniciados por el sistema o por el usuario. Además, las Activity-s utilizan una o varias Views para presentar al usuario los elementos de la IU.

Esta información es lo que por ahora necesitamos saber, pero en conclusión una Activity es una interfaz visual…

4.- Detalles de Activity

Simplemente llenaremos los datos de la activity o sus componentes, como definir su clase, el nombre de su layout, y otros detalles.

5.- Proyecto Creado

Con esto ya el proyecto esta creado… y tenemos nuestro primer Hola Mundo, pero ¿Como ejecutarlo?

6.- Preparando nuestro en dispositivo para Depuración

Si queremos ver la ejecución de nuestra aplicación y tenemos un dispositivo android a la mano, en primer lugar y para debemos de colocar al dispositivo en modo “Depuración USB” cuando este conectado. Busca Ajustes –> Aplicaciones –> Desarrollo –> Y seleccionas la opción “Depuración USB”.

7.- Creando un Dispositivo virtual

En caso de que no poseamos un dispositivo android, para hacer nuestras pruebas, o simplemente no deseemos usarlo para esto, podemos siempre crear un dispositivo virtual para hacer nuestras depuraciones y/o ejecuciones, lo importante es que no todo es posible visualizarlo, por ejemplo no tendrás resultados de los sensores, bluetooth, nfc y otros detalles, pero el movimiento básico de la aplicación lo puedes fácilmente probar.

8.- Invocamos el Android Virtual Device Manager

9.- Pedimos crear un nuevo Dispositivo Virtual

10.- Pedimos crear un nuevo Dispositivo Virtual

Aquí solo parametrizamos el dispositivo Virtual que recién creamos, básicamente debemos seleccionar que versión de android queremos que posea, tamaño de pantalla, de memoria interna y otros detalles…

11.- Subir a repositorio

Como todo programador serio que aspiro ser y seguro eres, todo proyecto importante debe tener su repositorio de control de versiones, esto es de GRAN ayuda a la hora de algún problema, o revisión que deseemos hacer.

En este caso no voy a explicar que es GIT, ni por que seleccione github ni nada de ni como usar git, creo que no corresponde a este tutorial sino que debe ser parte de otro, pero si quieres mas información google sera quien te pueda ayudar.


$ cd Desarrollo/eclipse/OsERPa/
$ git init
$ git add .
$ git commit -m "Iniciamos el Proyecto"
$ git remote add origin https://github.com/aasanchez/OsERPA.git
$ git push -u origin master

Ya con esto tenemos creado nuestro Proyecto y tenemos el repositorio git para mayor seguridad.

Categorías:Android Sdk Etiquetas: , , , ,

T00.- Mi Primera Aplicación Android (Razones)

24 agosto, 2012 3 comentarios

El día de ayer asistí a una entrevista técnica en una conocida empresa de la ciudad de barquisimeto, donde buscaban un desarrollador Android, como sabrán muchos mis conocimientos de Android son bastante básicos no mas que un par de cosas simples, y cuando me presentaron el examen mi cara fue algo así…

Ser buen programador no depende de cuantos lenguajes sepas, sino de tu capacidad de comprender y adaptarte a todos los lenguajes, casi todos o son algo como java o algo como C, me apreté el pantalón, saque los zapatos y comenzé a desarrollar y aliándome con Google para todo lo que no sabia (casi todo)…

Este fue el examen:

Diseñar una app que permita tomar pedido a los clientes almacenados en la base de datos local.

La Aplicación al iniciar debe solicitar el código del vendedor el cual estará incluido en el pedido, para identificar el vendedor que tomo el mismo.

La aplicación debe traer cargado 5 clientes (rif, razón social) y 10 productos (código, descripción, precio).

La aplicación debe tener los siguientes módulos:

  1. Toma de Pedido
  2. Reporte
    1. Pedidos
    2. Clientes

Descripción de modelos
Toma de Pedido: En este módulo se debe seleccionar el cliente, producto con sus respectivas unidades del mismo, requerida por el cliente.

Reporte – Pedidos: En este módulo se listaran los pedidos tomados desde la aplicación. En dicha lista se debe mostrar el número de pedido, cliente y código de vendedor. Dicha opción debe permitir visualizar el detalle de un pedido.

Reporte – Clientes: En este módulo se listarán los clientes disponibles en la aplicación.

La arquitectura para el diseño para la aplicación sera la siguiente:
Base de datos local.
POO.

Obviamente no logre hacer un buen trabajo, tarde demasiado intentar usar una base de datos SQLite, y casi toda la mañana la perdí por problema del computador que me habían entregado, bueno aunque hoy ya las escusas sobran, al final no quede contento con mi trabajo, sin embargo me he dispuesto a realizar la aplicación de nuevo, pero como debería hacerse, en el proceso aprender mas sobre Android y su SDK, y bueno que mejor forma escusa para aprender que dedicarse a enseñar…

Así que ahora comenzare una serie de entradas en este blog, de como se deberia desarrollar una aplicación de este tipo en Android, para que todo aquel interesado pueda ir aprendiendo sobre programación en Android

El Desarrollo lo estaré alojando en mi cuenta en github, en el siguiente repositorio https://github.com/aasanchez/OsERPA
Esto fue lo que pude entregar durante el examen: Versión Original

Instalando el SDK de Android

23 agosto, 2011 4 comentarios

(Actualizado al 09-06-2015)
Si deseas comenzar a desarrollar aplicaciones para Android, y Appinventor crees que ya no puedes sacarle mas, no tienes otra opción que trabajar directamente con el Sdk, pero para esto primero debes instalarlo, así como un buen IDE de desarrollo, en este caso usaremos el mas recomendado y archiconocido Eclipse.

Instalamos el SDK
Primero debemos crear un lugar donde alojar todos nuestro archivos, particularmente acostumbro a instalar este tipo de aplicaciones en el directorio /opt. Teniendo esto claro, ahora nos descargamos el SDK a nuestro Home.

$ wget http://dl.google.com/android/android-sdk_r24.2-linux.tgz

O visitamos http://developer.android.com/sdk/index.html y descargamos la versión para Linux i386

Esto tomara unos minutos dependiendo de tu velocidad de conexión, ya con el sdk en nuestro computador, sera trasladarlo al directorio, descomprimirlo, garantizar los permisos, eliminar lo descargado para no embasurar el Disco Duro.

# mv android-sdk_r24.2-linux.tgz /opt
# cd /opt
# tar -zxvf android-sdk_r24.2-linux.tgz
# chmod -R 777 /opt/android-sdk-linux
# rm android-sdk_r24.2-linux.tgz

Creamos un alias en la consola para invocar el sdk
Como ahora la ruta para ubicar el sdk esta algo fastidiosa, /opt/android-sdk-linux/tools/, es posible que invocar el sdk se vuelva un poco fastidioso, entonces para ahorrarnos un trabajo primero editamos el fichero .bashrc alojado en tu directorio home.

$ gedit ~/.bashrc

y al final agreamos la siguiente linea:

export PATH=${PATH}:/opt/android-sdk-linux/tools

Para que este alias funcione correctamente debemos cerrar y abrir de nuevo la terminal.

Instalando el SDK

Al Ejecutar:

$ android

Nos aparecerá esta ventana:
Captura de pantalla de 2014-06-13 19:07:20
Y esta es la interfaz de administracion del sdk, solo seleccionaremos los paquetes del sdk y las versiones de Android que deseamos trabajar. En mi caso voy a instalar todo lo que hay en el Android Repository. Solo por que simplmente puedo y quiero 😀

Captura de pantalla de 2014-06-13 19:07:49

 

Luego de instalar, ya tenemos nuestro sdk instalado, ahora solo falta decidir en donde lo vamos a utilizar.

Instalando Eclipse

Como dije al comienzo, el IDE para desarrollar tus aplicaciones para Android el ideal es el reconocido Eclipse, algo que debemos saber es que el que viene en los repositorios no nos sirve,
tendremos que bajar la ultima versión desde el sitio oficial de este editor, en su versión Eclipse IDE for Java Developers actualmente en la pagina de.

Para Instalar eclipse, simplemente lo haremos al igual que el Sdk, lo instalaremos en el directorio /opt, y repetiremos exactamente el mismo procedimiento.

# mv Descargas/eclipse-java-kepler-SR1-linux-gtk.tar.gz /opt/
# cd /opt/
# tar -zxvf eclipse-java-kepler-SR1-linux-gtk.tar.gz
# chmod -R 777 /opt/eclipse
# rm eclipse-java-kepler-SR1-linux-gtk.tar.gz

Agregamos la siguiente linea al final del archivo .bashrc

export PATH=${PATH}:/opt/eclipse

Configurando eclipse
La primera vez que ejecutamos Eclipse nos aparecerá una ventana para preguntarnos donde vamos a guardar nuestro espacio de trabajo. Selecciona la ruta que más te guste, yo coloque algo como /home/alexis/Desarrollo/eclipse.

Bien, ya estamos en Eclipse. Ahora hay que instalar el plugin del SDK de Android así que vamos a Help > Install New Software… donde debemos pulsar el botón Add… y poner los siguientes datos:

Nos aparecerá un Developer Tools, seleccionamos todo y pulsamos Next > para que compruebe las dependencias necesarias.

Solo resta terminar de aceptar y esperar a que se ejecute toda la descarga, igual tomara unos minutos.

Normalmente habrá que reiniciar Eclipse. Si no os lo pide, hazlo igualmente.

Por último nos queda indicar donde está el SDK en nuestro equipo. Para ello vamos a Window > Preferences > Android y donde pone SDK Location pulsamos el botón Browse… y buscamos la carpeta donde está instalado el SDK de Android que en este caso sera:

/opt/android-sdk-linux_x86/

Y listo, ya tenemos todo lo necesario para comenzar a crear nuevas aplicaciones para Android, ahora con el sdk. Pronto el primero “Hola Mundo!!”