15
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS UNIDAD ACADÉMICA DE PINOS TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN Materia Desarrollo de Aplicaciones lll Tema Manual de Programa en Android de Registro de Usuario. Nombre completo del Alumno: María de Jesús Reyes Betancourt. Grado: 5 Grupo: A Nombre del Docente : Eloy Contreras de Lira Fecha de entrega : 20-03-2014

Manual marichuy

Embed Size (px)

DESCRIPTION

Manual

Citation preview

Page 1: Manual marichuy

UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS UNIDAD ACADÉMICA DE PINOS

TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN

Materia

Desarrollo de Aplicaciones lll

Tema

Manual de Programa en Android de Registro de Usuario.

Nombre completo del Alumno: María de Jesús Reyes Betancourt.

Grado: 5 Grupo: A Nombre del Docente : Eloy Contreras de Lira Fecha de entrega : 20-03-2014

Page 2: Manual marichuy

A continuación explicare a detalle como realice el programa en Android para llevar

a cabo el Registro de Usuario, Eliminación, Actualización, Modificación del

Usuario.

Iniciamos abriendo el Programa Android el cual está Vinculado con Eclipse y SDK

Enseguida de que abre la aplicación se comienza hacer la creación de los botones

para la aplicación que se va llevar a cabo, como se muestra en la siguiente

pantalla, ya insertados los botones.

El cual ya se muestran los botones para insertar el Usuario, Guardar, Actualizar o

eliminar

Page 3: Manual marichuy

En el cual nos vamos a ir a la parte de código, ya que en esta pantalla nos

encontramos de manera gráfica.

En este caso nos muestra el código de los botones, el cual es donde se lleva a

cabo el diseño y la manera en que se desea visualizar. El cual se puede ver en

Graphical Layout

En el siguiente código se lleva a cabo la configuración el botón loyout, para así

elegir la aplicación que desea correr

Page 4: Manual marichuy

Si hemos activado el emulador (como indicamos aquí) se iniciará el AVD y se

ejecutará automáticamente nuestra aplicación

Page 5: Manual marichuy

Volveremos a nuestra aplicación, no recomendamos cerrar el emulador pues tarda unos segundos en cargarse, si lo dejamos abierto, con la aplicación cerrada, cuando volvamos a compilarla la carga será muchísimo más rápida.

A continuación en la aplicación comienza el código para cada botón que hemos

hecho de manera gráfica.

Page 6: Manual marichuy

En el paquete se selecciona en src, la clase de agenda.java para comenzar a

codificar la aplicación.

A continuación declararemos los import para usar las clases Android que

necesitaremos para nuestra aplicación:

En este código se lleva a cabo la introducción de las librerías para el

funcionamiento del proyecto.

importandroid.app.Activity;

importandroid.os.Bundle;

importandroid.content.ContentValues;

importandroid.database.sqlite.SQLiteDatabase; //para conexión a base de

datos SQLite

importandroid.widget.EditText; //para usar cuadros de texto

importandroid.widget.Button; //para usar botones

importandroid.widget.Toast; //para mostrar mensajes "emergentes"

importandroid.util.Log;

importandroid.view.View;

importandroid.content.Intent;

Page 7: Manual marichuy

importandroid.net.Uri; //para llamar a un número de teléfono

importandroid.app.AlertDialog; //para mostrar mensaje de confirmación

importandroid.content.DialogInterface;

Declararemos la clase, el activity, las variables que usaremos y

ejecutaremos el layout con:

publicclass agenda extendsActivity

{

EditTexteditNombre,editTelefono;

privateButtonbotonGuardar;

privateButtonbotonLlamar;

privateButtonbotonEliminarBD;

privateButtonbotonCerrar;

privateSQLiteDatabasebaseDatos;

private static final String TAG = "bdagenda";

private static final String nombreBD = "agenda";

private static final String tablaContacto = "contacto";

//guardamos en un String toda la creación de la tabla

private static final String crearTablaContacto = "create table if not exists "

+ " contacto (codigointegerprimarykeyautoincrement, "

+ " nombre text not null, telefono text not null unique);";

@Override

public void onCreate(Bundle savedInstanceState)

{

//Asignamos a cada objeto visual creado a su respectivo elemento de

main.xml

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

editNombre = (EditText) findViewById(R.id.txtNombre);

Page 8: Manual marichuy

editTelefono = (EditText) findViewById(R.id.txtTelefono);

botonGuardar = (Button) findViewById(R.id.btGuardar);

botonLlamar = (Button) findViewById(R.id.btLlamar);

botonEliminarBD = (Button) findViewById(R.id.btEliminarBD);

botonCerrar = (Button) findViewById(R.id.btCerrar);

Código asignado al botón Guarda Contacto:

//Guardar el contacto actual en la agenda

botonGuardar.setOnClickListener(new View.OnClickListener()

{

public void onClick(View v)

{

//Abrir la base de datos, se creará si no existe

abrirBasedatos();

//Insertar una fila o registro en la tabla "contacto"

//si la inserción es correcta devolverá true

boolean resultado = insertarFila(editNombre.getText().toString(),

editTelefono.getText().toString());

if(resultado)

Toast.makeText(getApplicationContext(),

"Contactoañadidocorrectamente",

Toast.LENGTH_LONG).show();

else

Toast.makeText(getApplicationContext(),

"No se ha podido guardar el contacto"

,Toast.LENGTH_LONG).show();

}

});

Código para llamar al contacto actual por teléfono que se desea

Page 9: Manual marichuy

//Llamar al contacto actual por teléfono

botonLlamar.setOnClickListener(new View.OnClickListener()

{

public void onClick(View v)

{

//Mostrar un mensaje de confirmación antes de realizar la llamada

AlertDialog.BuilderalertDialog = new AlertDialog.Builder(agenda.this);

alertDialog.setMessage("¿Desea realizar la llamada al contacto?");

alertDialog.setTitle("Llamar a contacto...");

alertDialog.setIcon(android.R.drawable.ic_dialog_alert);

alertDialog.setCancelable(false);

alertDialog.setPositiveButton("Sí", new DialogInterface.OnClickListener()

{

public void onClick(DialogInterface dialog, int which)

{

try

{

EditTextnum=(EditText)findViewById(R.id.txtTelefono);

String number = "tel:" + num.getText().toString().trim();

Toast.makeText(getApplicationContext(),

"Llamando al " + num.getText().toString().trim(),

Toast.LENGTH_LONG).show();

Intent callIntent = new Intent(Intent.ACTION_CALL, Uri.parse(number));

startActivity(callIntent);

}

catch (Exception e)

{

Toast.makeText(getApplicationContext(),

"No se ha podido realizar la llamada",

Toast.LENGTH_LONG).show();

}

Page 10: Manual marichuy

}

});

alertDialog.setNegativeButton("No", new DialogInterface.OnClickListener()

{

public void onClick(DialogInterface dialog, int which)

{

Toast.makeText(getApplicationContext(),

"Llamadacancelada", Toast.LENGTH_LONG).show();

}

});

alertDialog.show();

}

});

Código del botón eliminar base de datos:

//Eliminar la base de datos de la agenda

botonEliminarBD.setOnClickListener(new View.OnClickListener()

{

public void onClick(View v)

{

//Mostrar un mensaje de confirmación antes de eliminar la base de datos

AlertDialog.BuilderalertDialog = new AlertDialog.Builder(agenda.this);

alertDialog.setMessage("¿Desea eliminar la base de datos por

completo?");

alertDialog.setTitle("Eliminar agenda...");

alertDialog.setIcon(android.R.drawable.ic_dialog_alert);

alertDialog.setCancelable(false);

alertDialog.setPositiveButton("Sí", new DialogInterface.OnClickListener()

{

public void onClick(DialogInterface dialog, int which)

{

Page 11: Manual marichuy

try

{

Toast.makeText(getApplicationContext(),

"Eliminando base de datos: " + nombreBD,

Toast.LENGTH_LONG).show();

boolean resultado = deleteDatabase(nombreBD);

if(resultado)

Toast.makeText(getApplicationContext(),

"Base de datoseliminadacorrectamente", Toast.LENGTH_LONG).show();

else

Toast.makeText(getApplicationContext(),

"No se ha podido eliminar la base de datos",

Toast.LENGTH_LONG).show();

}

catch (Exception e)

{

Toast.makeText(getApplicationContext(),

"No se ha podido eliminar la base de datos",

Toast.LENGTH_LONG).show();

}

}

});

alertDialog.setNegativeButton("No", new DialogInterface.OnClickListener()

{

public void onClick(DialogInterface dialog, int which)

{

Toast.makeText(getApplicationContext(),

"Eliminación de base de datos cancelada",

Toast.LENGTH_LONG).show();

}

});

Page 12: Manual marichuy

alertDialog.show();

}

});

Código para botón de cerrar la aplicación:

//Cerrar aplicación Android

botonCerrar.setOnClickListener(new View.OnClickListener()

{

public void onClick(View v)

{

finish();

}

});

Código para abrir la base de datos (crearla si no existe, crear la tabla):

//Procedimiento para abrir la base de datos

//si no existe se creará, también se creará la tabla contacto

privatevoidabrirBasedatos()

{

try

{

baseDatos = openOrCreateDatabase(nombreBD,

MODE_WORLD_WRITEABLE, null);

baseDatos.execSQL(crearTablaContacto);

}

catch (Exception e)

{

Log.i(TAG, "Error al abrir o crear la base de datos" + e);

}

}

Page 13: Manual marichuy

Código para insertar un registro en la tabla de la base de datos SQLite:

//Método que realiza la inserción de los datos en nuestra tabla contacto

private booleaninsertarFila(String nombre, String telefono)

{

ContentValues values = new ContentValues();

values.put("nombre",nombre );

values.put("telefono", telefono);

Toast.makeText(getApplicationContext(), "Nombre: " + nombre + ", " +

"teléfono: " + telefono, Toast.LENGTH_LONG).show();

return (baseDatos.insert(tablaContacto, null, values) > 0);

}

En esta clase es donde se lleva a cabo el proceso del código para la aplicación

Page 14: Manual marichuy

A manera detallada es donde se comprueba la aplicación, donde se introducen los

datos para insertar contacto, eliminar, actualizar.

Al momento en que ingresa un dato nos muestra el mensaje, exitosamente.

Page 15: Manual marichuy

En este caso si queremos borra algún contacto, nos muestra la opción.

Al presionar que si nos muestra un mensaje donde los datos se han eliminado.

Así de esta manera se realizó correctamente la aplicación en Android con sdk y

eclipse

APK DE LA AGENDA

AjpdSoftAgendaTelefonicaAndroid.apk