manual de java.docx

34
Manual de Java Temas MANEJO DEL PURTO PARALELO.…………………….…… 3 MANEJO DEL PURTO SERIAL.………………………….…... 5 DESARROLLO DE INTERFACES………….….………….….. 8 DESARROLLO E IMPLEMENTACION DE APPLETS.…….18 APLICACIONES EN ANDROID.....………………………….. 22 Resumen En las prácticas que se realizaran en este manual se verán varias cosas que se pueden hacer con el lenguaje java, como mandar datos por el puerto paralelo y serie, interfaces gráficas, manejo de APPLETS e incluso a realizar aplicaciones para ANDROID una de las plataformas de dispositivos móviles más usadas, utilizando el IDE Eclipse, cabe aclarar que el mismo programas fueron probados en otro IDE llamado NetBeans y los resultados obtenidos fueron los mismos. Introducción Como se puede ver java está teniendo mucho éxito en el mundo tecnológico, debido a que es muy flexible, todo lo que nos rodea se está programando en este lenguaje, desde las

Upload: josue-gustavo-hernandez-villa

Post on 02-Jan-2016

145 views

Category:

Documents


13 download

TRANSCRIPT

Page 1: MANUAL DE JAVA.docx

Manual de Java

Temas

MANEJO DEL PURTO PARALELO.…………………….…… 3

MANEJO DEL PURTO SERIAL.………………………….…... 5

DESARROLLO DE INTERFACES………….….………….….. 8

DESARROLLO E IMPLEMENTACION DE APPLETS.…….18

APLICACIONES EN ANDROID.....………………………….. 22

Resumen

En las prácticas que se realizaran en este manual se verán varias cosas que se pueden hacer con el lenguaje java, como mandar datos por el puerto paralelo y serie, interfaces gráficas, manejo de APPLETS e incluso a realizar aplicaciones para ANDROID una de las plataformas de dispositivos móviles más usadas, utilizando el IDE Eclipse, cabe aclarar que el mismo programas fueron probados en otro IDE llamado NetBeans y los resultados obtenidos fueron los mismos.

Introducción

Como se puede ver java está teniendo mucho éxito en el mundo tecnológico, debido a que es muy flexible, todo lo que nos rodea se está programando en este lenguaje, desde las lavadoras o chips telefónicos, hasta los mismos teléfonos celulares, es por eso que nos introduciremos poco a poco en este maravilloso mundo.

Como ya se sabe se puede programar en lenguaje java desde diferentes IDE´s el que se utilizara en estas prácticas es Eclipse.

Page 2: MANUAL DE JAVA.docx

2

MANEJO DEL PURTO PARALELO

Materiales

- Driver jnpout32pkg.dll- Tarjeta con 8 leds- IDE Eclipse

Marco teórico

Lo primero que se debe hacer antes de empezar a programar es conseguir una herramienta llamada jnpout32pkg, esta herramienta nos facilita la transmisión paralela del PC.

Para que nuestro IDE reconozca esta herramienta debemos meter el archivo .dll en la ruta:

C:\Windows\System32

Ya teniendo el driver en esa ruta, abrimos el IDE de eclipse y creamos un nuevo proyecto java.

El siguiente paso es crear un paquete y dentro de este una clase la clase debe contener el siguiente cogido:

package jnpout32;

publicclass ioPort{

publicnativevoid Out32(short PortAddress, short data);publicnativeshort Inp32(short PortAddress);// AQUI SE CARGA EL ARCHIVO jnpout32pkg.dll static { System.loadLibrary("jnpout32pkg ");}

Page 3: MANUAL DE JAVA.docx

2

}

El código siguiente es para poder utilizar los métodos out32 e inp32, de la .dll antes mencionada, esto paramanejar el puerto paralelo.

Se debe crear otro paquete que llamaremos Programa, en el cual se creara una clase publica llamada portParalelo, debemos importar el paquete creado anterior mente.

import jnpout32.ioPort;

Después se coloca el siguiente código el cual nos servirá para mandar datos por el puerto paralelo.

package Programa;

import jnpout32.ioPort;

publicclass PortParalelo {

publicstaticvoid main(String args[]) { ioPort Puerto = new ioPort(); Puerto.Out32((short)0x378, (short)0xFF);System.out.println("Hola"); }}

El programa lo que hace es mandar un dato hexadecimal por el puerto paralelo.

MANEJO DEL PURTO SERIAL

Materiales

Drivers (RXTXcomm.jar, rxtxSerial.dll) ó (GiovynetDriver.jar, libSerialPort.dll, libSOSerialPort.so)

IDE Eclipse o NetBeans

Page 4: MANUAL DE JAVA.docx

2

Marco teórico

Lo primero que se debe hacer antes de empezar a programar es conseguir una herramienta llamada RXTXcomm.jar o GiovynetDriver.jar, estas herramientas nos permiten manipular el hardware de nuestra PC para poder trasmitir mediante un puerto serial.

Estos archivos se deben colocar en unas rutas específicas ya sean RXTXcomm.jar o GiovynetDriver.jar, es la misma para cualquiera de los casos:

C:\Program Files \Java\jre7\lib\ext

Después se deben colocar las librerías que trae cada driver en la misma dirección para cualquiera de los casos ya sea rxtxSerial.dll o libSerialPort.dll, libSOSerialPort.so:

C:\Program Files\Java\jre7\bin

Page 5: MANUAL DE JAVA.docx

2

Ya teniendo los drivers en esas rutas, abrimos el IDE de eclipse y creamos un nuevo proyecto java el cual vamos a llamar RS232.

En este caso vamos a usar el driver (RXTXcomm.jar, rxtxSerial.dll) lo cual los comandos que se usaran en el código son únicos para este driver, para el driver de “GiovynetDriver.jar” se usa de forma distinta la cual solo mostraremos la forma de hacerlo con “RXTXcomm.jar”.

El siguiente paso es crear un paquete y dentro de este una clase que llamaremos Main la cual debemos importar la siguientes librerias:

import gnu.io.*;//estalibrería contiene todos los comandos que se usaran para la comunicación serial import java.io.*;import java.util.*;import java.lang.*;

Después se debe colocar el código que servirá para configurar toda la comunicación y para transmitir que debe quedar así:

Page 6: MANUAL DE JAVA.docx

2

package paquete;

import gnu.io.*;//esta librería contiene todos los comandos que se usaran para la comunicación serial. import java.io.*;import java.util.*;import java.lang.*;

class Main {publicstaticvoid main(String[] args) throws Exception{

// TODO Auto-generated method stubEnumeration commports =

CommPortIdentifier.getPortIdentifiers();CommPortIdentifier myCPI = null;Scanner mySC;PrintStream myPS;while(commports.hasMoreElements()){

myCPI = (CommPortIdentifier) commports.nextElement();if(myCPI.getName().equals("COM9"))

//aquí se colocara el número del puerto COM que se va a usar

break;}CommPort puerto = myCPI.open("RS232", 2000);SerialPort mySP = (SerialPort) puerto;mySP.setSerialPortParams(9600, SerialPort.DATABITS_8,

SerialPort.STOPBITS_1, SerialPort.PARITY_NONE);//aquí se configura la transmisión que es la velocidad, bits

de datos, bit de stop y la paridadmySC = new Scanner(mySP.getInputStream());myPS = new PrintStream(mySP.getOutputStream());while(!mySC.hasNextInt()){

mySC.close();mySC = null;mySC = new Scanner(mySP.getInputStream());

}myPS.println("hola");//aquí se colocará lo que se quiere transmitir como una

cadena de texto o números enteros}

}

Ya terminado el programa se mandan los datos mediante la variable local “myPS” y para poder recibir y leer los datos con la variable “mySC”.

Page 7: MANUAL DE JAVA.docx

2

DESARROLLO DE INTERFACES

Materiales

IDE Eclipse WindowBuilder para eclipse

Marco teórico

Para crear interfaces graficas en java se necesitan dos librerías, estas dos engloban todas las necesarias que se pueden utilizar, o se pueden cargar solo las que se van a usar para que nuestra interfaz no se sature, completas son las siguientes.

Javax.swing.*: esta librería utiliza los recursos de java para mostrar la interfaz gráfica.

Javax.awt.*: esta librería utiliza los recursos de la PC para mostrar la interfaz gráfica.

Instalación de WindowsBuilder

1. Seleccionar Help Install New Software…

Page 8: MANUAL DE JAVA.docx

2

2.- Dar click en “add”, en el campo “location” introducimos la URL http://dl.google.com/eclipse/inst/d2wbpro/latest/3.7 presionamos “Ok” seleccionamos todos los ítems como aparecen en la siguiente imagen, y se instala el software.

3.-Crear un nuevo proyectó con el nuevo software que acabamos de instalar, con el seguimiento de la imagen seleccionando un JFrame.

Page 9: MANUAL DE JAVA.docx

2

4.- Una vez creado el proyecto se mostraran dos pestañas en la parte inferior, “Source” en esta se mostrara el código de la interfaz, “Design” en este se mostrara la interfaz gráfica y la paleta de objetos.

5.- En la paleta de componentes, seleccionamos un absolute layout en la opción de Layouts y lo colocamos en la ventana de la interfaz, esto nos permitirá mover libremente los componentes en la ventana.

Ejemplo de una Calculadora echa con Windowsbuilder en Eclipse

Crear un nuevo proyecto seleccionando un JFrame, añadiremos un paquete llamado ventana, en este paquete se generara el código de las funciones de la calculadora que son sumar, restar, multiplicar y dividir, en la ventana “design” se colocara un absolute layout, para poder mover todos los objetos libremente, se van a agregar 17 botones que van hacer los números, los signos operacionales, el punto, la “C” de borrar y una caja de texto llamada “txtHola”, al final obtendremos la calculadora de esta forma.

Page 10: MANUAL DE JAVA.docx

2

A los botones de números se les añadirá un evento, que copiara lo que está en la caja de texto y le agregara el valor del botón, a los botones de los operadores se les añadirá la llamada a su función específica, y al final el código completo quedara así.

package ventana;import java.awt.EventQueue;import java.awt.BorderLayout;import java.awt.EventQueue;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.border.EmptyBorder;publicclasswindowextends JFrame {

private JPanel contentPane;private JTextField txtHola;privateintv = 0;private String calc;private String comp = "";privatedoublenumero;privatedoubleresultado;private JButton btnNewButton_1;private JButton btnNewButton_2;private JButton btnNewButton_3;private JButton btnNewButton_4;private JButton button;private JButton button_1;private JButton button_2;private JButton button_3;private JButton button_4;private JButton button_5;private JButton button_6;private JButton button_7;private JButton btnX;private JButton button_8;private JButton btnC;private JButton button_9;publicstaticvoid main(String[] args) {

EventQueue.invokeLater(new Runnable() {publicvoid run() {

try {window frame = new window();frame.setVisible(true);

} catch (Exception e) {e.printStackTrace();

Page 11: MANUAL DE JAVA.docx

2

}}

});}public window() {

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setBounds(100, 100, 254, 275);contentPane = new JPanel();contentPane.setBackground(Color.GRAY);contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));setContentPane(contentPane);contentPane.setLayout(null);txtHola = new JTextField();txtHola.setEditable(false);txtHola.setHorizontalAlignment(SwingConstants.RIGHT);txtHola.setBounds(22, 11, 198, 36);contentPane.add(txtHola);txtHola.setColumns(10);txtHola.setText("0");JButton btnNewButton = new JButton("1");btnNewButton.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent arg0) {if(v == 0){txtHola.setText("");}v = 1;calc = txtHola.getText();txtHola.setText(calc + "1") ;

}});btnNewButton.setBounds(22, 93, 41, 23);contentPane.add(btnNewButton);btnNewButton_1 = new JButton("2");btnNewButton_1.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {if(v == 0){txtHola.setText("");}v = 1;calc = txtHola.getText();txtHola.setText(calc + "2") ;

}});btnNewButton_1.setBounds(77, 93, 41, 23);contentPane.add(btnNewButton_1);btnNewButton_2 = new JButton("0");btnNewButton_2.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {if(v == 0){txtHola.setText("");}v = 1;calc = txtHola.getText();txtHola.setText(calc + "0") ;

}});btnNewButton_2.setBounds(77, 195, 41, 23);contentPane.add(btnNewButton_2);btnNewButton_3 = new JButton("8");btnNewButton_3.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {if(v == 0){txtHola.setText("");}v = 1;

Page 12: MANUAL DE JAVA.docx

2

calc = txtHola.getText();txtHola.setText(calc + "8") ;

}});btnNewButton_3.setBounds(77, 161, 41, 23);contentPane.add(btnNewButton_3);btnNewButton_4 = new JButton("9");btnNewButton_4.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {if(v == 0){txtHola.setText("");}v = 1;calc = txtHola.getText();txtHola.setText(calc + "9") ;

}});btnNewButton_4.setBounds(128, 161, 41, 23);contentPane.add(btnNewButton_4);button = new JButton("3");button.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {if(v == 0){txtHola.setText("");}v = 1;calc = txtHola.getText();txtHola.setText(calc + "3") ;

}});button.setBounds(128, 93, 41, 23);contentPane.add(button);button_1 = new JButton("4");button_1.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {if(v == 0){txtHola.setText("");}v = 1;calc = txtHola.getText();txtHola.setText(calc + "4") ;

}});button_1.setBounds(22, 127, 41, 23);contentPane.add(button_1);button_2 = new JButton("5");button_2.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {if(v == 0){txtHola.setText("");}v = 1;calc = txtHola.getText();txtHola.setText(calc + "5") ;

}});button_2.setBounds(77, 127, 41, 23);contentPane.add(button_2);button_3 = new JButton("6");button_3.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {if(v == 0){txtHola.setText("");}v = 1;calc = txtHola.getText();txtHola.setText(calc + "6") ;

Page 13: MANUAL DE JAVA.docx

2

}});button_3.setBounds(128, 127, 41, 23);contentPane.add(button_3);button_4 = new JButton("7");button_4.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {if(v == 0){txtHola.setText("");}v = 1;calc = txtHola.getText();txtHola.setText(calc + "7") ;

}});button_4.setBounds(22, 161, 41, 23);contentPane.add(button_4);button_5 = new JButton("=");button_5.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {funcIgualdad();

}});button_5.setBounds(128, 195, 41, 23);contentPane.add(button_5);button_6 = new JButton("+");button_6.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {funcSuma();

}});button_6.setBounds(179, 93, 41, 23);contentPane.add(button_6);button_7 = new JButton("-");button_7.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {funcResta();

}});button_7.setBounds(179, 127, 41, 23);contentPane.add(button_7);btnX = new JButton("*");btnX.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {funcMult();

}});btnX.setBounds(179, 161, 41, 23);contentPane.add(btnX);button_8 = new JButton("/");button_8.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {funcDiv();

}});button_8.setBounds(179, 195, 41, 23);contentPane.add(button_8);btnC = new JButton("C");btnC.addActionListener(new ActionListener() {

Page 14: MANUAL DE JAVA.docx

2

publicvoid actionPerformed(ActionEvent e) {txtHola.setText("0") ;v = 0;numero = 0;resultado = 0;

}});btnC.setBounds(128, 59, 92, 23);contentPane.add(btnC);button_9 = new JButton(".");button_9.addActionListener(new ActionListener() {

publicvoid actionPerformed(ActionEvent e) {if(v == 0){txtHola.setText("");}v = 1;calc = txtHola.getText();txtHola.setText(calc + ".") ;

}});button_9.setBounds(22, 195, 41, 23);contentPane.add(button_9);

}protectedvoid funcIgualdad() {

numero = Double.parseDouble(txtHola.getText());if(comp == "+"){resultado = (resultado + numero);txtHola.setText("" + resultado); } elseif(comp == "-"){resultado = (resultado - numero);txtHola.setText("" + resultado); } elseif(comp == "*"){resultado = (resultado * numero);txtHola.setText("" + resultado); } elseif (comp == "/"){resultado = (resultado / numero);txtHola.setText("" + resultado);}

}protectedvoid funcDiv() {

numero = Double.parseDouble(txtHola.getText());if(comp == "+"){resultado = (resultado + numero);txtHola.setText(""); } elseif(comp == "-"){resultado = (resultado - numero);txtHola.setText(""); } elseif(comp == "*"){resultado = (resultado * numero);txtHola.setText(""); }if(resultado == 0.0){resultado = 1.0; }comp = "/";numero = Double.parseDouble(txtHola.getText());resultado = (numero / resultado);txtHola.setText("");

}

Page 15: MANUAL DE JAVA.docx

2

protectedvoid funcSuma(){// Estemetodoimplementalasuma.if(txtHola.getText() == ""){txtHola.setText("0"); }numero = Double.parseDouble(txtHola.getText());if(comp == "-"){resultado = (resultado - numero);txtHola.setText("0"); } elseif(comp == "*"){resultado = (resultado * numero);txtHola.setText("0"); } elseif(comp == "/"){resultado = (resultado / numero);txtHola.setText("0"); }comp = "+";numero = Double.parseDouble(txtHola.getText());resultado = (resultado + numero);txtHola.setText(""); }protectedvoid funcResta(){// Estemetodoimplementalaresta.numero = Double.parseDouble(txtHola.getText());if(comp == "+"){resultado = (resultado + numero);txtHola.setText(""); } elseif(comp == "*"){resultado = (resultado * numero);txtHola.setText(""); } elseif(comp == "/"){resultado = (resultado / numero);txtHola.setText("");}comp = "-";numero = Double.parseDouble(txtHola.getText());resultado = (numero - resultado);txtHola.setText(""); }protectedvoid funcMult(){// Estemetodoimplementalamultiplicacion.if(txtHola.getText() == ""){txtHola.setText("1"); }numero = Double.parseDouble(txtHola.getText());if(comp == "+"){resultado = (resultado + numero);txtHola.setText("1"); } elseif(comp == "-"){resultado = (resultado - numero);txtHola.setText("1"); } elseif (comp == "/"){resultado = (resultado / numero);txtHola.setText("1");}if(resultado == 0.0){resultado = 1.0;

Page 16: MANUAL DE JAVA.docx

2

}comp = "*";numero = Double.parseDouble(txtHola.getText());resultado = (resultado * numero);txtHola.setText(""); }}

DESARROLLO E IMPLEMENTACION DE APPLETS

Materiales

IDE Eclipse Editor de texto para HTML (en este caso usaremos DREAMWEAVER)

Page 17: MANUAL DE JAVA.docx

2

Explorador de internet (para visualizar el applet ya instalado)

Marco teórico

Un applet es un programa Java cuya ejecución está asociada a la “carga” de un documento HTML, se necesita una estructura en HTMLdonde se requieren parámetros que necesitará el applet para su ejecución.

Se utiliza una librería para la ejecución de un applet que es:

import java.applet.*;

Su estructura está compuesta de la siguiente forma:

<APPLET CODE=”Applet.class” WIDTH=anchura HEIGHT=altura>

<PARAM NAME=parámetro1 VALUE=Valor>

<PARAM NAME=parámetro2 VALUE=otroValor>

</APPLET>

Otra forma de incluir un applet es usando un archivo .jar, para crear este archivo se debe exportar todo el proyecto como un JAR file como se muestra en la imagen.

Una vez creado el archivo .jar se implementara en el documento HTML llamando al archivo con la dirección ARCHIVE=“Archivo.jar” y la clase principal CODE=“paquete/applet.class”, “paquete” es el paquete que contiene la clase principal es importante que se dé la dirección correcta de la clase principal para que no haya errores.

Page 18: MANUAL DE JAVA.docx

2

La estructura con el archivo .jar está compuesta de la siguiente forma:

<APPLET CODE=”Paquete/Applet.class”ARCHIVE=”Archivo.jar” WIDTH=anchura HEIGHT=altura>

<PARAM NAME=parámetro1 VALUE=Valor>

<PARAM NAME=parámetro2 VALUE=otroValor>

</APPLET>

Los applets obtienen los valores de los parámetros definidos por el usuario llamando al método getParameter() de la clase Applet.

Los applets pueden contener unos métodos básicos que son los ciclos de vida de un applet y métodos de pantalla del applet que son los siguientes.

Ciclos de vida de un applet

init()Para inicializar el applet cada vez que se carga.

start()Para iniciar la ejecución del applet, una vez cargado el applet o cuando el usuario vuelve a visitar la página que contiene el applet.

stop()Para parar la ejecución del applet, cuando el usuario abandona la página o sale del navegador.

destroy()Realiza una limpieza final para preparar la descarga.

Métodos de pantalla del applet

paint()El método de dibujo básico. Muchos applets implementan el método paint() para mostrar la representación de un applet dentro de la página del navegador.

update()Un método que se puede utilizar junto en el método paint() para aumentar el rendimiento de los gráficos.

Un applet debe sobrescribir el método especializado apropiado o el método handleEvent().

Page 19: MANUAL DE JAVA.docx

2

Eventos de un applet

add() Añade el componente especificado.

remove() Elimina el componente especificado.

setLayout() Activa el manejador de distribución.

Desarrollo e implementación de un applet

Creamos un nuevo proyecto con el nombre applet, agregamos un paquete que llamaremos “app” y dentro de este la clase principal del que contendrá el código del applet.

En este applet dibujaremos 4 círculos azules, uno rojo más grande y 2 líneas que dividirán el applet en cuatro partes, quedando el applet de esta forma.

En el código siguiente se puede ver la que solo se usó el método paint(), ya que solo se dibujaron figura en el applet.

package app;import java.awt.*;import java.applet.*;import javax.swing.*;publicclassapplet1extends Applet {

private Image imag;private ImageIcon imag2;

publicvoid init(){

Page 20: MANUAL DE JAVA.docx

2

}publicvoid paint(Graphics g) {g.setColor( Color.red );g.drawLine(100, 0, 100, 200 );g.drawLine(0, 100, 200, 100 );g.drawOval(20, 20, 160, 160);g.setColor( Color.blue );g.drawOval(20, 20, 50, 50);g.drawOval(130, 20, 50, 50);g.drawOval(20, 130, 50, 50);g.drawOval(130, 130, 50, 50);}}

Implementación del applet en HTML

<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>Applet</title></head><body><applet code="app/applet1.class" archive="fig.jar" width="200" height="200" ></applet></body></html>

DESARROLLO DE APLICACIONES EN ANDROID

Materiales

IDE Eclipse con el SDK de Androidinstalado

Page 21: MANUAL DE JAVA.docx

2

Marco teóricoAndroid es un sistema operativo orientado a dispositivos móviles, basado en una versión modificada del núcleo Linux. Es el sistema operativo que más se usan en los dispositivos móviles actuales.En este tutorial veremos desde como instalar el SDK de Android hasta desarrollar las aplicaciones paso a paso.

Instalación del SDK

1.- Se va a descargar el SDK desde la siguiente url, aquí se encuentra la versión de eclipse ya configurada y con los plugins de Android para poder crear las aplicaciones:http://developer.android.com/sdk/index.html.

2.- una vez descargado el archivo lo descomprimimos y en la carpeta raíz se encuentra el eclipse, lo ejecutamos para configurarlo.

3.-agregamos la versión de Android con la que vamos a trabajar, en la barra de opciones de eclipse seleccionamos Windows Android SDK Manager, nos abrirá la configuración del SDK, instalamos los paquetes de la versión Android 2.2 (API8) seleccionándola y posteriormente presionamos Install X packages… esperamos a que termine.

4.- creamos un nuevo dispositivo virtual para poder hacer las pruebas que vallamos haciendo, seleccionamos en las opciones de eclipse Windows Android Virtual Device Manager y en la ventana seleccionamos en New… y agregamos los datos como aparecen en la imagen siguiente el nombre pueden poner cualquiera.

Page 22: MANUAL DE JAVA.docx

2

Una vez terminado todo esto, la configuracion ha terminado para poder trabajar y desarrollar las aplicaciones.

Desarrollo de una aplicación

Creamos un nuevo proyecto Android, nos vamos a “new” seleccionamos “Other…” y creamos un Android Application Project como lo muestra la imagen.

Damos clic al botón Next >, le ponemos un nombre a la aplicación y uno al proyecto que se está creando, en la configuración de la versión que se va a usar seleccionamos la API8: Android 2.2 (Froyo) que es la que instalamos, todo lo crearemos en esta versión por la compatibilidad de versiones, debido a que esta la podemos ejecutar en las más resientes, la configuración quedara así.

Page 23: MANUAL DE JAVA.docx

2

Continuamos dando Next > hasta finalizar.

Se pueden crear las aplicaciones de dos formas, mediante la forma visual que se manipulan los objetos mediante XML y sus funciones que se crean en java.

Crearemos una pequeña aplicación que será una calculadora básica en la cual introduciremos con el teclado de Android dos cantidades en dos campos de texto que podremos sumar, restar, multiplicar y dividir, el resultado se mostrara en un texto.

En nuestro proyecto nos dirigimos “res layout activiti_main.xml” como en la imagen.

En este seleccionamos la pestaña inferior “Grafical Layout”, aquí nos mostrara la interfaz gráfica que podremos manipular y agregar objetos, agregaremos don campos de que configuraremos como campos numéricos cuatro botones que nombraremos con las funciones matemáticas y un campo de texto que configuraremos comoeditable.

El aspecto de la aplicación quedara similar a la siguiente imagen:

Page 24: MANUAL DE JAVA.docx

2

Cuando ya esté la interface debemos identificar cada objeto para poder crear los eventos correspondientes, esto se puede ver seleccionando en la pestaña inferior activity_main.xml o dando doble clic a cada objeto y te mostrara su respectivo código XML donde encontraremos su id, el cual se puede cambiar.El código XML de cada objeto tiene una estructura así:

<Buttonandroid:id="@+id/button1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignLeft="@+id/textView1"android:layout_alignParentRight="true"android:layout_below="@+id/editText2"android:layout_marginTop="20dp"android:text="@string/botonsuma"/>

Sabiendo cual es el id de cada objeto pasamos a crear el código en la clase principal, donde programaremos en java todos los eventos y las funciones que se necesitarán así como importar las librerías que usaremos (cada librería se importa individualmente debido a que si importamos todo el paquete la aplicación puede ponerse lenta al correr).

El código con todas las funciones y eventos queda de la siguiente forma:

package com.apic.android;import android.os.Bundle;import android.app.Activity;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView;publicclass MainActivity extends Activity {

Button suma;Button resta;Button multiplicacion;Button divicion;protectedvoid onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);suma = (Button)findViewById(R.id.button1);resta = (Button) findViewById(R.id.button2);multiplicacion = (Button) findViewById(R.id.button3);divicion = (Button) findViewById(R.id.button4);

suma.setOnClickListener(new OnClickListener() {publicvoid onClick(View v)

{ TextView temp; TextView resultado = (TextView)findViewById(R.id.textView3); temp = (TextView)findViewById(R.id.editText1);try{float a = Float.parseFloat(temp.getText().toString());

Page 25: MANUAL DE JAVA.docx

2

temp = (TextView)findViewById(R.id.editText2);float b = Float.parseFloat(temp.getText().toString());

resultado.setText("Resultado : "+ (a+b));

}catch(Exception e){ resultado.setText("Se debe introducir valores");

}; }});resta.setOnClickListener(new OnClickListener() {

publicvoid onClick(View v) {

TextView temp; TextView resultado = (TextView)findViewById(R.id.textView3); temp = (TextView)findViewById(R.id.editText1);try{float a = Float.parseFloat(temp.getText().toString()); temp = (TextView)findViewById(R.id.editText2);float b = Float.parseFloat(temp.getText().toString());resultado.setText("Resultado : "+ (a-b)); }catch(Exception e){

resultado.setText("Se debe introducir valores");};

}});multiplicacion.setOnClickListener(new OnClickListener() {

publicvoid onClick(View v) {

TextView temp; TextView resultado = (TextView)findViewById(R.id.textView3); temp = (TextView)findViewById(R.id.editText1);try{float a = Float.parseFloat(temp.getText().toString()); temp = (TextView)findViewById(R.id.editText2);float b = Float.parseFloat(temp.getText().toString());resultado.setText("Resultado : "+ (a*b)); }catch(Exception e){

resultado.setText("Se debe introducir valores");};

}});divicion.setOnClickListener(new OnClickListener() {

publicvoid onClick(View v) {

TextView temp; TextView resultado = (TextView)findViewById(R.id.textView3); temp = (TextView)findViewById(R.id.editText1);try{float a = Float.parseFloat(temp.getText().toString()); temp = (TextView)findViewById(R.id.editText2);float b = Float.parseFloat(temp.getText().toString());resultado.setText("Resultado : "+ (a/b)); }catch(Exception e){

resultado.setText("Se debe introducir valores"); };

Page 26: MANUAL DE JAVA.docx

2

}});}}

Ya terminado toda la aplicación debemos ejecutarla para ver si funciona correctamente, para ello vamos a seleccionar la clase principal y dar clic en “Run”, nos pedirá como queremos ejecutarla, seleccionamos el dispositivo que creamos anteriormente y damos “OK”, esperamos a que se ejecute y la probamos, debe quedar de la siguiente forma.

Se introducirán las cantidades con el teclado del teléfono o el que te despliega Android.

Crear el instalador de la aplicación

Para crear el archivo de la aplicación nos vamos a “File Export…, yseleccionamos Export Android Application como aparece en la imagen:

Page 27: MANUAL DE JAVA.docx

2

Damos Next >, y en la siguiente opción seleccionamos el proyecto que deseamos exportar a la aplicación, ya seleccionado el proyecto damos a Next >, en la siguiente ventana damos a la opción “Create new keystore” y nos pedirá que busquemos la dirección para crearla (seleccionamos la carpeta del proyecto), en los siguientes campos de texto introducimos una contraseña mayor de 6 dígitos, como se muestra en la imagen:

Posteriormente creado el nuevo “keystore” damos a Next >, en la siguiente ventana los datos necesarios, la contraseña debe ser la misma que introducimos en la ventana anterior así como en la siguiente imagen:

Seguimos dando a Next >, y en la ventana siguiente seleccionamos la misma dirección que en la primera ventana, ya seleccionada damos en “Finish” para crear

Page 28: MANUAL DE JAVA.docx

2

la aplicación, una vez que termino nos dirigimos a la carpeta donde seleccionamos para guardarla.

Una vez ubicado el archivo ya está listo para ser instalado en cualquier dispositivo Android.