Ejemplo de Aplicacion Android

11
Instituto Tecnológico de Zacatepec Ingeniería en Tecnologías de la Información y Comunicaciones Desarrollo de Aplicaciones para Dispositivos Móviles Gpo. XB Práctica 3-> Aplicación de prueba para API geometría Prof. Mario Humberto Tiburcio Zúñiga Alumno: Juan Carlos Alvarado Rivera - 11090409

description

Se muestra el desarrollo de una aplicación que hace uso de un API propia, que se implementa en una aplicación android desarrollada en Eclipse

Transcript of Ejemplo de Aplicacion Android

Page 1: Ejemplo de Aplicacion Android

Instituto Tecnológico de Zacatepec

Ingeniería en Tecnologías de la Información

y Comunicaciones

Desarrollo de Aplicaciones para Dispositivos

Móviles

Gpo. XB

Práctica 3-> Aplicación de prueba para API geometría

Prof. Mario Humberto Tiburcio

Zúñiga

Alumno: Juan Carlos Alvarado Rivera - 11090409

Page 2: Ejemplo de Aplicacion Android

Objetivo(s):

Crear una API de cuerpos y figuras geométricas e implementar dicha API en una aplicación

Android.

Descripción del trabajo:

Generar las clases Triangulo, Circulo, Cuadrado, Cilindro, Cono y Esfera de acuerdo a las

definiciones de atributos y métodos especificados.

Compilar las clases y clasificar los archivos .class, generados en la compilación, de acuerdo al

siguiente a la siguiente estructura:

Definición de las clases:

geometria

cuerpos figuras

Circulo Cuadrado Cono Cilindro Esfera Triangulo

Page 3: Ejemplo de Aplicacion Android

Procedimiento

Paso 1: Generar clases java

geometria.figuras

Circulo.java Triangulo.java Cuadrado.java

package geometria.figuras;

public class Circulo{

private double radio;

final double PI=3.1416;

public Circulo(){

this.radio=0;

}

public void setRadio(int r){

this.radio = r;

}

public double getRadio(){

return radio;

}

public double area(){

double

area=PI*radio*radio;

return area;

}

public double perimetro(){

double perimetro =

2*PI*radio;

return perimetro;

}

}

package geometria.figuras;

public class Triangulo{

private double base;

private double altura;

public Triangulo(){

this.base=0;

this.altura=0;

}

public void setBase(int b){

this.base = b;

}

public double getBase(){

return base;

}

public void setAltura(int a){

this.altura = a;

}

public double getAltura(){

return altura;

}

public double area(){

double

area=(base*altura)/2;

return area;

}

package geometria.figuras;

public class Cuadrado{

private double lado;

public Cuadrado(){

this.lado=0;

}

public void setLado(int l){

this.lado = l;

}

public double getLado(){

return lado;

}

public double area(){

double area=lado*lado;

return area;

}

public double perimetro(){

double perimetro =

4*lado;

return perimetro;

}

}

Page 4: Ejemplo de Aplicacion Android

public double perimetro(){

double hip =

Math.sqrt((base*base)+(altura*altura));

double perimetro = base

+ altura + hip;

return perimetro;

}

}

geometria.cuerpos

Cono.java Cilindro.java Esfera.java

package geometria.cuerpos;

import java.lang.Math;

public class Cono{

private double radio;

private double altura;

private double geratriz;

final double PI=3.1416;

public Cono(){

this.radio=0;

this.altura=0;

this.geratriz=0;

}

public void setRadio(int r){

this.radio = r;

}

public double getRadio(){

return radio;

}

public void setAltura(int h){

this.altura = h;

}

public double getAltura(){

return altura;

}

public double area(){

double suma =

radio*radio+altura*altura;

this.geratriz=Math.sqrt(suma);

double

area=PI*radio*(radio+geratriz);

return area;

}

public double Volumen(){

double

volumen=(PI*radio*radio*altura)/3;

return volumen;

}

public double cinturon(){

double cinturon =

2*PI*radio;

return cinturon;

}

}

package geometria.cuerpos;

public class Cilindro{

private double radio;

private double altura;

final double PI=3.1416;

public Cilindro(){

this.radio=0;

this.altura=0;

}

public void setRadio(int r){

this.radio = r;

}

public double getRadio(){

return radio;

}

public void setAltura(int h){

this.altura = h;

}

public double getAltura(){

return altura;

}

public double volumen(){

double

volumen=PI*radio*radio*altura;

return volumen;

}

public double area(){

double

area=2*PI*radio*(radio+altura);

return area;

}

public double cinturones(){

double cinturones =

3*2*PI*radio;

return cinturones;

}

}

package geometria.cuerpos;

public class Esfera{

private double radio;

final double PI=3.1416;

public Esfera(){

this.radio=0;

}

public void setRadio(int r){

this.radio = r;

}

public double getRadio(){

return radio;

}

public double volumen(){

double

volumen=(4*PI*radio*radio*radio)/3;

return volumen;

}

public double area(){

double

area=4*PI*radio*radio;

return area;

}

public double cinturon(){

double cinturon =

2*PI*radio;

return cinturon;

}

}

Page 5: Ejemplo de Aplicacion Android

Paso 2: Compilar las clases

Una vez que se han codificado las clases que componen la API, estas se compilan haciendo uso

del comando javac, con lo cual se generan los archivos .class necesarios para generar la

biblioteca de clases para la aplicación Android.

Compilación de las clases contenidas en geometría.figuras

Page 6: Ejemplo de Aplicacion Android

Compilación de las clases contenidas en geometría.cuerpos

Page 7: Ejemplo de Aplicacion Android

Paso 3: Creación del archivo geo.jar

Ya que se tienen los archivos .class generados se eliminan, de las carpetas que forman parte de

la estructura geometría, los archivos .java para que solo se tengan archivos .class

Utilizando el comando jar –cf <nombre_paquete.jar> nombre_carpeta se genera el archivo con

extensión .jar el cual se agrega al sistema de archivos de la aplicación Android.

Paso 4: Agregar geo.jar al proyecto Android

Dando clic derecho sobre el archivo geo.jar se selecciona la opción de copiar y se pega en la

carpeta libs, que se encuentra en Nombre_proyecto->libs, dentro del sistema de archivos del

proyecto, dando clic derecho sobre la carpeta y seleccionando la opción pegar.

Page 8: Ejemplo de Aplicacion Android

Paso 5: Agregar código en la aplicación Android

Los archivos generados por el SDK de Android que se manipulan para agregar funcionalidad a

la aplicación son “MainActivity.java” y “ativity_main.xml”

Modificaciones a “ativity_main.xml”

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"

android:id="@+id/scrollView1"

android:layout_width="fill_parent"

android:layout_height="fill_parent" >

<RelativeLayout

android:layout_width="match_parent"

android:layout_height="406dp" >

<TextView

android:id="@+id/textView1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignParentTop="true"

android:layout_centerHorizontal="true"

android:layout_marginTop="28dp"

android:text="@string/textview"

android:textSize="15sp" />

</RelativeLayout>

</ScrollView>

Modificaciones a “MainActivity.java”

package com.alvarado.geoapppp;

import geometria.figuras.Circulo;

import android.os.Bundle;

import android.app.Activity;

import android.view.Menu;

import android.widget.TextView;

public class MainActivity extends Activity {

TextView tv1;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

Circulo c = new Circulo();

Page 9: Ejemplo de Aplicacion Android

tv1 = (TextView)findViewById(R.id.textView1);

tv1.setText("Radio*****Perimetro*****Area\n");

for(int i=1; i<=100;i++){

c.setRadio(i);

tv1.append(String.format("\n %8.4f %8.4f %8.4f", c.getRadio(), c.perimetro(), c.area()));

}

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;

}

}

Paso final: Ejecución de la aplicación

Para ejecutar el proyecto se da clic derecho sobre el nombre del proyecto y se eligen las

opciones Run As-> Android Application

Page 10: Ejemplo de Aplicacion Android
Page 11: Ejemplo de Aplicacion Android