Está en la página 1de 31

Desarrollar aplicacin Android con acceso a base de datos SQLite con

Eclipse
http://www.ajpdsoft.com/modules.php?name=News&file=print&sid=537
Fecha Sbado, 23 abril a las 00:13:35
Tema Android
Mostramos paso a paso con cdigo fuente Java (Eclipse y Android) cmo desarrollar
una
aplicacin
que
acceda
a
base
de
datos
SQLite
(http://sourceforge.net/projects/sqlitebrowser/)
para
dispositivos
Android.
Explicamos cmo crear mensajes de confirmacin, cmo hacer una llamada a un
contacto, cmo crear una base de datos SQLite, cmo eliminar una base de datos
SQLite y cmo insertar registros en una base de datos SQLite desde nuestro
dispositivo Android. Incluimos cdigo fuente de la aplicacin AjpdSoft Agenda
Telefnica Android.

Android.

Requisitos iniciales para desarrollar aplicaciones para dispositivos


Android.

Desarrollar aplicacin Android con acceso a base de datos SQLite.

La aplicacin AjpdSoft Agenda Telefnica Android en funcionamiento.

Cmo comprobar la base de datos SQLite y explorar los ficheros del


dispositivo Android virtual emulador AVD.

Anexo.
o

Cdigo fuente completo de AjpdSoft Agenda Android 1.0.

Artculos relacionados.

Crditos.

Android
Android es un sistema operativo basado en Linux para dispositivos mviles, como
telfonos inteligentes y tablets. Fue desarrollado inicialmente por Android Inc.,
una firma comprada por Google en 2005. Es el principal producto de la Open
Handset Alliance, un conglomerado de fabricantes y desarrolladores de hardware,
software y operadores de servicio.
Android tiene una gran comunidad de desarrolladores escribiendo aplicaciones para
extender la funcionalidad de los dispositivos. Hasta la fecha, existen cerca de
200.000 aplicaciones disponibles para Android. Android Market es la tienda de
aplicaciones en lnea administrada por Google, aunque existe la posibilidad de
obtener software externamente. Los programas estn escritos en el lenguaje de
programacin Java.
Google liber la mayora del cdigo de Android bajo la licencia Apache, una
licencia libre y de cdigo abierto. Actualmente Android posee el 32,9% de cuota

de mercado a escala mundial de los telfonos inteligentes, por delante de Symbian


OS que tiene 30,6%. En tercer lugar se sita Apple con cuota de mercado del 16%.
La estructura del sistema operativo Android se compone de aplicaciones que se
ejecutan en un framework Java de aplicaciones orientadas a objetos sobre el
ncleo de las bibliotecas de Java en una mquina virtual Dalvik con compilacin
en tiempo de ejecucin. Las bibliotecas escritas en lenguaje C incluyen un
administrador de interfaz grfica (surface manager), un framework OpenCore, una
base de datos relacional SQLite, una API grfica OpenGL ES 2.0 3D, un motor de
renderizado WebKit, un motor grfico SGL, SSL y una biblioteca estndar de C
Bionic. El sistema operativo est compuesto por 12 millones de lneas de cdigo,
incluyendo 3 millones de lneas de XML, 2,8 millones de lneas de lenguaje C, 2,1
millones de lneas de Java y 1,75 millones de lneas de C++.
Las versiones de Android reciben nombre de postres en ingls. En cada versin el
postre elegido empieza por una letra distinta siguiendo un orden alfabtico:

C: Cupcake (v1.5), magdalena glaseada.

D: Donut (v1.6), rosquilla.

E: clair (v2.0/v2.1), pastel francs conocido en Espaa como pepito o


canuto.

F: Froyo (v2.2), (abreviatura de frozen yogurt) yogur helado.

G: Gingerbread (v2.3), pan de jengibre.

H: Honeycomb (v3.0), panal de miel.

Requisitos iniciales para desarrollar aplicaciones para dispositivos Android


A continuacin mostramos un artculo donde explicamos cmo instalar Eclipse, el
IDE de desarrollo que usaremos para realizar aplicaciones para dispositivos
Android. Adems, en este artculo explicamos cmo instalar el SDK de Android
tanto en el equipo como en Eclipse. Explicamos cmo preparar un equipo con Linux
Ubuntu para que sirva como plataforma de desarrollo de aplicaciones para
dispositivos Android:
Mi primera aplicacin Android con Eclipse en Linux, instalar Eclipse Ubuntu

Desarrollar aplicacin Android con acceso a base de datos SQLite


Abriremos el IDE de desarrollo Eclipse, accederemos al men "File" - "New" "Project":

Seleccionaremos "Android" - "Android Project" y pulsaremos "Next":

Introduciremos los datos del nuevo proyecto Android:

Project name: AjpdSoftAgendaTelefonicaAndroid.

Contents: marcaremos "Create new project in workspace" y marcaremos "Use


default location".

En Build Target marcaremos "Android 2.3.3".

Application name: "AjpdSoft Agenda Telefonica Android".

Package name: "agendatelefonica.agenda".

Marcaremos "Create Activity" e introduciremos "agenda".

Pulsaremos "Finish":

En primer lugar crearemos el entorno visual de la aplicacin, aadiremos dos


cuadros de texto para introducir el telfono y el nombre del contacto y
aadiremos tres botones: aadir contacto, llamar al contacto y eliminar base de
datos. Para ello accederemos en el Package Explorer a "res" luego a "layout" y
haremos doble click en "main.xml":

El fichero "main.xml" contendr en formato XML los componentes visuales de nuestra aplicacin Android,
desde aqu especificaremos los elementos que ver el usuario de nuestra aplicacin Android. Por ejemplo, para
aadir un Label (etiqueta de texto) introduciremos:

Para aadir un cuadro de edicin de texto usaremos:

Para aadir un botn usaremos:

La propiedad ms importante, de cara a programar y usar cada elemento, es


"android:id" donde especificaremos el nombre que tendr cada componente,
para poder usarlo en el cdigo.
En el siguiente enlace publicamos el cdigo fuente completo en Eclipse de
la aplicacin para dispositivos Android AjpdSoft Agenda Telefnica Android,
donde incluimos el fichero del layout main.xml:

AjpdSoft Agenda Telefnica Android


Aunque el proceso de aadir componentes visuales pueda parecer un poco
engorroso, las aplicaciones para dispositivos mviles no suelen tener
muchos componentes visuales, como es lgico dado su uso y espacio en
pantalla. Deben ser aplicaciones muy prcticas y con pocos elementos
visuales.

En la parte inferior de la ventana anterior, pulsando en "Graphical Layout"


podremos ir viendo cmo queda visualmente la aplicacin, es una
aproximacin, para ver cmo quedara en un dispositivo mvil Android

deberemos compilar la aplicacin y usar el emulador. Para volver al modo


edicin pulsaremos (en la parte inferior) en "main.xml". En nuestro caso
hemos aadido los siguientes componentes visuales:

TextView: etiqueta de texto para mostrar "Introduccin de datos".

EditText: cuadro de texto para que el usuario introduzca el nombre


del contacto.

EditText: cuadro de texto para que el usuario introduzca el nmero de


telfono del contacto.

Button: botn para insertar un contacto a la base de datos agenda.

Button: botn para llamar al contacto actual, realizar una llamada


telefnica al nmero de telfono actual.

Button:

botn para eliminar la base de datos completa.

Button: botn para cerrar la aplicacin.

Antes de aadir cdigo a cada botn podremos probar cmo quedaran los
componentes visuales en el emulador (un dispositivo Android virtual, casi
como si de un mvil Android fsico se tratara). Sin duda este emulador se
convertir en una herramienta fundamental para poder probar el resultado de
nuestras aplicaciones sin necesidad de estar instalndolas contnuamente en
un dispositivo Android fsico. Para compilar la aplicacin pulsaremos en el
men "Run" - "Run" ( pulsando las teclas Control + F11):

En la ventana de "Run As" seleccionaremos "Android Application" y

pulsaremos "OK":

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


ejecutar automticamente nuestra aplicacin. En esta primera compilacin
los botones de "Insertar contacto", "Llamar al contacto", "Eliminar BD" y
"Cerrar aplicacin" no tendrn efecto an, pues no los hemos programado,
aunque ya podremos ver cmo va quedando nuestra aplicacin en un
dispositivo Android:

Volveremos a nuestra aplicacin, no recomendamos cerrar el emulador pues


tarda unos segundos en cargarse, si lo dejamos abierto, con la aplicacin
cerrada, cuando volvamos a compilarla la carga ser muchsimo ms rpida.

Desde nuestra aplicacin Android, aadiremos ahora el cdigo fuente Java


para cada botn que hemos aadido en el layout, para ello abriremos el
Package Explorer, pulsaremos en "sr", luego en "agendatelefonica.agenda"
(package de la aplicacin) y haremos doble clic en "agenda.java":

Aadiremos el siguiente cdigo en el fichero agenda.java:

Definiremos el package con:

package agendatelefonica.agenda;

A continuacin declararemos los import para usar las clases Android


que necesitaremos para nuestra aplicacin:

import android.app.Activity;

import android.os.Bundle;

import android.content.ContentValues;

import android.database.sqlite.SQLiteDatabase; //para


conexin a base de datos SQLite

import android.widget.EditText; //para usar cuadros de texto

import android.widget.Button; //para usar botones

import android.widget.Toast; //para mostrar mensajes


"emergentes"

import android.util.Log;

import android.view.View;

import android.content.Intent;

import android.net.Uri; //para llamar a un nmero de


telfono

import android.app.AlertDialog; //para mostrar mensaje de


confirmacin

import android.content.DialogInterface;

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


ejecutaremos el layout con:

public class agenda extends Activity


{
EditText editNombre,editTelefono;
private Button botonGuardar;
private Button botonLlamar;
private Button botonEliminarBD;

private Button botonCerrar;


private
private
private
private

SQLiteDatabase baseDatos;
static final String TAG = "bdagenda";
static final String nombreBD = "agenda";
static final String tablaContacto = "contacto";

//guardamos en un String toda la creacin de la tabla


private static final String crearTablaContacto = "create table if
not exists "
+ " contacto (codigo integer primary key autoincrement, "
+ " 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);
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);

Cdigo asignado al botn 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 insercin es correcta devolver true
boolean resultado = insertarFila(editNombre.getText().toString(),
editTelefono.getText().toString());
if(resultado)
Toast.makeText(getApplicationContext(),
"Contacto aadido correctamente",
Toast.LENGTH_LONG).show();
else
Toast.makeText(getApplicationContext(),
"No se ha podido guardar el contacto" ,
Toast.LENGTH_LONG).show();
}

});

Cdigo para llamar al contacto actual por telfono:

//Llamar al contacto actual por telfono


botonLlamar.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
//Mostrar un mensaje de confirmacin antes de realizar la llamada
AlertDialog.Builder alertDialog = 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
{
EditText num=(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();
}
}
});
alertDialog.setNegativeButton("No", new
DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int which)
{
Toast.makeText(getApplicationContext(),
"Llamada cancelada", Toast.LENGTH_LONG).show();
}

});
alertDialog.show();
}
});

Cdigo del botn 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 confirmacin antes de eliminar la base de
datos
AlertDialog.Builder alertDialog = 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)
{
try
{
Toast.makeText(getApplicationContext(),
"Eliminando base de datos: " + nombreBD,
Toast.LENGTH_LONG).show();
boolean resultado = deleteDatabase(nombreBD);
if(resultado)
Toast.makeText(getApplicationContext(),
"Base de datos eliminada correctamente",
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(),
"Eliminacin de base de datos cancelada",
Toast.LENGTH_LONG).show();
}
});
alertDialog.show();
}
});

Cdigo para botn de cerrar la aplicacin:

//Cerrar aplicacin Android


botonCerrar.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
finish();
}
});

Cdigo 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, tambin se crear la tabla contacto
private void abrirBasedatos()
{
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);

Cdigo para insertar un registro en la tabla de la base de datos


SQLite:

//Mtodo que realiza la insercin de los datos en nuestra tabla contacto


private boolean insertarFila(String nombre, String telefono)
{
ContentValues values = new ContentValues();
values.put("nombre",nombre );
values.put("telefono", telefono);
Toast.makeText(getApplicationContext(), "Nombre: " + nombre + ", " +
"telfono: " + telefono, Toast.LENGTH_LONG).show();
return (baseDatos.insert(tablaContacto, null, values) > 0);
}

La aplicacin AjpdSoft Agenda Telefnica Android en funcionamiento


Si eres usuario registrado de nuestra web (si no lo eres puedes registrarte
gratuitamente aqu) puedes descargar el cdigo fuente y la aplicacin .apk
lista para instalar en dispositivos Android en:
AjpdSoft Agenda Telefnica Android

A continuacin mostramos cmo funciona nuestra aplicacin de ejemplo de


acceso a SQLite en dispositivos Android. Tras abrir la aplicacin,
introduciremos el nombre del contacto y el telfono y pulsaremos en el
botn "Insertar contacto":

Si no hay problemas mostrar el mensaje "Contacto aadido correctamente":

Si hay algn problema, por ejemplo que se est intentando introducir un


telfono ya existente mostrar el mensaje "No se ha podido guardar el
contacto":

Para realizar una llamada telefnica desde nuestro dispositovo Android


pulsaremos en el botn "Llamar al contacto", dicho botn pedir
confirmacin con el mensaje "Desea realizar la llamada al contacto?" si
pulsaremos "S":

Realizar una llamada telefnica al nmero de telfono del contacto:

Si queremos eliminar toda la agenda (por completo) pulsaremos en el botn


"Eliminar BD":

Nos mostrar un mensaje de confirmacin con el texto "Desea eliminar la


base de datos por completo?", pulsaremos "S" si queremos eliminar todos
los contactos de la aplicacin AjpdSoft Agenda Telefnica Android de
nuestro dispositvo Android, por supuesto, hablamos siempre de los contactos
de la agenda de nuestra aplicacin, NO de los contactos del dispositivo
Android:

Si la base de datos de la agenda ha podido ser eliminada mostrar el


mensaje "Base de datos eliminada correctamente":

Por ltimo, si queremos cerrar la aplicacin AjpdSoft Agenda Telefnica


Android, hemos aadido el botn "Cerrar aplicacin" pues es una de las
carencias habituales de las aplicaciones Android, no suelen incluir un
botn cerrar y hay que cerrarlas usando alguna aplicacin de terceros:

Tras pulsar el botn cerrar, Android nos devolver al men del dispositivo:

Cmo comprobar la base de datos SQLite y explorar los ficheros del


dispositivo Android virtual emulador AVD
Si queremos explirar los ficheros del dispositivo virtual Android y, sobre
todo, si queremos ver si nuestra aplicacin ha creado el fichero de base de
datos SQLite, desde Eclipse, pulsaremos en el men "Window" - "Open
Perspective" - "Other":

Seleccionaremos DDMS y pularemos OK:

Desde el File Explorer, accederemos a "data" - "data" "agendatelefonica.agenda" - "databases", dentro de esta carpeta debe
aparecer el fichero "agenda" correspondiente a la base de datos SQLite
creada desde nuestra aplicacin AjpdSoft Agenda Telefnica Android:

Para comprobar que se estn insertando los registros en la tabla "contacto"


de la base de datos SQLite de nuestra aplicacin AjpdSoft Agenda Telefnica
Android abriremos una ventana de Terminal (en Linux Ubuntu desde
"Aplicaciones" - "Accesorios" - "Terminal"), desde esta ventana accederemos
a la subcarpeta "platform-tools" que estar ubicada dentro de la carpeta de
instalacin del SDK de Android, en nuestro caso:

/home/ajpdsoft/Android/android-sdk-linux_x86/platform-tools

Una vez en esta carpeta, ejecutaremos el comando linux:

./adb shell

A continuacin, para abrir la base de datos creada desde nuestra


aplicacin, una vez que sabemos su ubicacin (con File Explorer DDMS),
ejecutaremos el comando:

sqlite3 /data/data/agendatelefonica.agenda/databases/agenda
Si la ruta es correcta y existe el fichero "agenda" de SQLite entraremos en
la lnea de comandos de SQLite, desde donde podremos, por ejemplo, ejecutar

una consulta SQL para ver si se estn insertando los registros en la tabla
"contacto" y para ver si existe la tabla contacto:

Para comprobar que existe la tabla "contacto" ejecutaremos el comando:


.tables

Para mostrar el contenido de la tabla "contacto" y verificar que la


aplicacin AjpdSoft Agenda Telefnica Android est funcionando
correctamente ejecutaremos el comando SQL:
select * from contacto;
Que nos devolver todos los contactos de la tabla "contactos" de la base de
datos "agenda":

Otra herramienta ms de Eclipse y el SDK de Android para facilitarnos el


desarrollo de aplicaciones para dispositivos Android.

Anexo

Cdigo fuente completo de AjpdSoft Agenda Android 1.0:

package agendatelefonica.agenda;

import
import
import
import
import
import
import
import
import
import
import
import
import

android.app.Activity;
android.os.Bundle;
android.content.ContentValues;
android.database.sqlite.SQLiteDatabase;
android.widget.EditText;
android.widget.Button;
android.widget.Toast;
android.util.Log;
android.view.View;
android.content.Intent;
android.net.Uri;
android.app.AlertDialog;
android.content.DialogInterface;

public class agenda extends Activity


{
EditText editNombre,editTelefono;
private Button botonGuardar;
private Button botonLlamar;
private Button botonEliminarBD;
private Button botonCerrar;
private
private
private
private

SQLiteDatabase baseDatos;
static final String TAG = "bdagenda";
static final String nombreBD = "agenda";
static final String tablaContacto = "contacto";

//guardamos en un String toda la creacin de la tabla


private static final String crearTablaContacto = "create table if not
exists "
+ " contacto (codigo integer primary key autoincrement, "
+ " 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);
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);
//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 insercin es correcta devolver true


boolean resultado = insertarFila(editNombre.getText().toString(),
editTelefono.getText().toString());
if(resultado)
Toast.makeText(getApplicationContext(),
"Contacto aadido correctamente",
Toast.LENGTH_LONG).show();
else
Toast.makeText(getApplicationContext(),
"No se ha podido guardar el contacto" ,
Toast.LENGTH_LONG).show();
}
});
//Llamar al contacto actual por telfono
botonLlamar.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
//Mostrar un mensaje de confirmacin antes de realizar la llamada
AlertDialog.Builder alertDialog = 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
{
EditText num=(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();
}
}
});
alertDialog.setNegativeButton("No", new
DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int which)
{
Toast.makeText(getApplicationContext(),
"Llamada cancelada", Toast.LENGTH_LONG).show();

}
});

}
});
alertDialog.show();

//Eliminar la base de datos de la agenda


botonEliminarBD.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
//Mostrar un mensaje de confirmacin antes de eliminar la base de
datos
AlertDialog.Builder alertDialog = 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)
{
try
{
Toast.makeText(getApplicationContext(),
"Eliminando base de datos: " + nombreBD,
Toast.LENGTH_LONG).show();
boolean resultado = deleteDatabase(nombreBD);
if(resultado)
Toast.makeText(getApplicationContext(),
"Base de datos eliminada correctamente",
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(),
"Eliminacin de base de datos cancelada",
Toast.LENGTH_LONG).show();
}

});
alertDialog.show();
}
});
//Cerrar aplicacin Android
botonCerrar.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
finish();
}
});

//Procedimiento para abrir la base de datos


//si no existe se crear, tambin se crear la tabla contacto
private void abrirBasedatos()
{
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);
}
}
//Mtodo que realiza la insercin de los datos en nuestra tabla contacto
private boolean insertarFila(String nombre, String telefono)
{
ContentValues values = new ContentValues();
values.put("nombre",nombre );
values.put("telefono", telefono);
Toast.makeText(getApplicationContext(), "Nombre: " + nombre + ", " +
"telfono: " + telefono, Toast.LENGTH_LONG).show();
return (baseDatos.insert(tablaContacto, null, values) > 0);
}
}

Artculos relacionados

AjpdSoft Agenda Telefnica Android.

Mi primera aplicacin Android con Eclipse en Linux, instalar Eclipse

Ubuntu.

Como crear una aplicacin con Java y Eclipse.

Instalacin y configuracin de Eclipse SQL Explorer en Eclipse


(Java).

Instalar y trabajar con la clase Visual Editor de Eclipse (Java).

Mi primera aplicacin para telfono mvil basada en Java (J2ME) con


NetBeans.

Java en estado puro, mi primera aplicacin Java.

Instalar SQLite 3.6.11, configurar y acceder mediante ODBC a SQLite.

Acceso a SQLite 3 mediante Delphi 6 y ZeosDBO en Windows XP.

Cmo acceder a MySQL con JSP, Tomcat y JDBC.

Artculos del Proyecto AjpdSoft sobre el lenguaje de programacin


Java.

Ejercicios resueltos en el lenguje de programacin C.

Artculos del Proyecto AjpdSoft sobre sistemas operativos (Windows,


GNU Linux, etc.).

Artculos del Proyecto AjpdSoft sobre los sistemas operativos


Microsoft Windows.

Artculos del Proyecto AjpdSoft sobre programacin.

Artculos del Proyecto AjpdSoft sobre Delphi (lenguaje de


programacin).

Artculos del Proyecto AjpdSoft sobre Visual Basic (lenguaje de


programacin).

Crditos
Artculo realizado ntegramente por Alonsojpd miembro fundador del proyecto
AjpdSoft.

También podría gustarte