Explora Libros electrónicos
Categorías
Explora Audiolibros
Categorías
Explora Revistas
Categorías
Explora Documentos
Categorías
2020
UNIVERSIDAD DE SAN BUENAVENTURA
USB Versión 1
Actividad No.10
Conceptos
Conectividad.
Cada vez más aplicaciones móviles necesitan datos para funcionar, y las bases de datos han sido durante bastante
tiempo la forma más común de almacenar y administrar datos.
Por lo tanto, en un escenario típico, una aplicación móvil usa una base de datos alojada que puede ser alojada de
forma local: Dispositivo, o en la nube: Hosting, de forma remota y establecer conexión para acceder a sus datos.
Esto, por supuesto, implica que la aplicación móvil necesita una conexión de red activa y bastante rápida.
La base de datos es la forma más común de almacenar y administrar datos. Desde hace bastante tiempo, las bases
de datos se manejan en el lado del servidor o en la nube y los dispositivos móviles solo se comunican con ellos a
través de la red. Hoy en día, las aplicaciones mantienen la base de datos localmente o hacen una copia de DB en
la nube en el dispositivo local y se sincronizan con ella una vez al día o cada vez que hay una conectividad de
red. Esto ayudará en aplicaciones más rápidas y receptivas que son funcionales incluso cuando no hay
conectividad a Internet o es limitada.
Las bases de datos para Android deben contener las siguientes características:
USB Página 2 de 9
Programación de Dispositivos Móviles
Conectividad
Base de
Tipo de datos Licencia Soporte
Datos
relacional, objetos, pares clave-valor,
BerkeleyDB AGPL 3.0 Android, iOS
documentos
Couchbase
documentos Apache 2.0 Android, iOS
Lite
LevelDB pares clave-valor New BSD Android, iOS
Android, iOS, Windows Phone,
SQLite relacional Public Domain
Blackberry
UnQLite pares clave-valor, documentos BSD 2-Clause Android, iOS, Windows Phone
La conexión directa a un Gestor de Base de Datos Externo desde Android es una posibilidad completamente
factible. Si bien es cierto que el propio sistema operativo Android trabaja con SQLite sin un servidor que
funcione como capa intermedia entre el S.O. y el Gestor de Base de Datos (no es posible la instalación de un
servidor en nuestro dispositivo Android), la opción de poder acceder a una base de datos externa desde el propio
dispositivo es una alternativa que no requiere de configuraciones especiales: bastaría con establecer permisos de
Internet en la aplicación que se desarrolle, además lógicamente, de un servidor externo para realizar la conexión.
Existen varios SGBD (Sistemas de Gestión de Base de Datos también conocidos por sus siglas en inglés DBMS)
que posibilitan la sincronización de una base de datos con una aplicación Android, lo cual nos permite hablar de
su transparencia de uso y conexión con Android. Es decir, que para establecer la conexión se puede utilizar cual
quiera de los Gestores de bases de Datos existentes, teniendo en cuenta que lo que varía en su utilización es de
acuerdo a la necesidad de solución que se desee implementar.
Para este caso y en aras de facilitar el proceso académico se utilizará el Gestor de Bases de Datos MySQL,
MySQL
Es un Sistema de gestión de base de datos relacional multiusuario y multihilo. Desarrollada inicialmente por
Sun Microsystems, actualmente su propietario es Oracle Corporation. Software libre y tipo de licencia GNU
GPL para aquellos proyectos que se adapten a este tipo de licencia (permite usar, compartir y modificar el
software), con la opción de poder adquirir una de carácter más privativo previo pago (parte del código está bajo
copyright).
USB Página 3 de 9
Programación de Dispositivos Móviles
Conectividad
Servicios web
Conjunto de aplicaciones o de tecnologías con capacidad para inter operar en la Web. Estas
aplicaciones o tecnologías intercambian datos entre sí con el objetivo de ofrecer unos servicios. Los
proveedores ofrecen sus servicios como procedimientos remotos y los usuarios solicitan un servicio
llamando a estos procedimientos a través de la Web.
Existen varias clases de Web Services, sin embargo, para establecer la conectividad de dispositivos
moviles con otros sistemas externos, se utilizará el servicio RESTFUL.
REST (REpresentation State Transfer). Los Servicios Web basados en REST intentan emular al
protocolo HTTP o protocolos similares mediante la restricción de establecer la interfaz a un conjunto
conocido de operaciones estándar (por ejemplo GET, PUT,...). Por tanto, este estilo se centra más en
inter actuar con recursos con estado, que con mensajes y operaciones. Y es un estilo de arquitectura de
software para sistemas hipermedias distribuidos tales como la Web. El término fue introducido en la
tesis doctoral de Roy Fielding en 2000, quien es uno de los principales autores de la especificación de
HTTP.
En esta guía se propone una actividad donde se desarrollará un ejemplo de conexión de una Aplicación
Android con una base de datos externa MySQL.
USB Página 4 de 9
Programación de Dispositivos Móviles
Conectividad
Actividad
Desarrollar una aplicación móvil que permita agendar diferentes actividades estableciendo la conexión
con una base de datos externa (MySQL). La aplicación deberá insertar y consultar información a través
del dispositivo móvil.
Características de navegación:
1. Pantalla de inicio
1.1. Agenda
1.1.1. Registrar información
1.1.2. Consultar información
Recomendaciones:
1. Crear la Base de Datos donde se almacenará la información, para lo cual puede utilizar MySQL.
2. Diseño y desarrollo de la App
3. Implementar el Web Services.
4. Establecer la configuración y conexión entre el Web Services y la Base de Datos de la
aplicación.
5. Pruebas y entrega.
Se debe tener en cuenta que para realizar la conexión a bases de datos utilizando es tipo de web Services, se
debe activar el servició Apache.
USB Página 5 de 9
Programación de Dispositivos Móviles
Conectividad
Estructura
new
URL("http://10.0.2.2/CursoAndroid/registro.php?nombres="+etNombres.getText().toString()+"&telefono="+etT
elefono.getText().toString());
nombres y teléfono => son las variables donde se almacena la información que obtiene mediante la interfaz.
etNombres => Nombre del campo EditTex().
getText().toString() => Objeto que permite obtener los datos del capo de texto.
(?) => Símbolo de interrogación que permite iniciar la cadena para obtener los datos.
(&) => Símbolo Amspersan permite concatenar las variables para formar la cadena que será enviada a la base
de datos.
Selección de Datos de la BD
new URL("http://10.0.2.2/CursoAndroid/consulta.php?id="+etId.getText().toString());
Se construye una activity, con el fin de parametrizar la dirección de acceso o web services.
Ejemplo:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.url);
}
}
Profesor: Yamil Buenaños Palacios
ybuenano@udbbog.edu.co
Fecha: 17-09 de
2020
USB Página 6 de 9
Programación de Dispositivos Móviles
Conectividad
new nombre_activity.ConsultarDatos().execute("http://"+IP+"/"+sitio+"/"+"consultar_perfil.php);
Abrir un archivo Bloc de Nota, copiar cada uno de los archivos que se describen a bajo. Cada archivo
es un Bloc de nota diferente.
<?php
// datos de configuración de la conexión a la base de datos
while($fila = mysqli_fetch_row($resultado))
{
echo json_encode($fila);
}
mysqli_close($con);
?>
USB Página 7 de 9
Programación de Dispositivos Móviles
Conectividad
include_once("conexion.php");
$variable1 = $_GET['nom_campo1_layout'];
$variable2 = $_GET['nom_campo2_layout'];
mysqli_close($con);
?>
USB Página 8 de 9
Programación de Dispositivos Móviles
Conectividad
Fig.1
Fig.2
3. Dentro de la carpeta WWW, crear la carpeta donde se guardarán los archivos PHP (Nombre del
sitio). De esa forma ya está configurado el servidor
USB Página 9 de 9
Programación de Dispositivos Móviles
Conectividad
4. Por ultimo proceda a probar el servido, para verificar que el mismo pueda visualizar los
archivos alojados en el sitio, PracticaMovil. Para lo cual, proceder escribiendo en el
visualizador la siguiente línea de código:
Figura 4
Deberá aparecer una pantalla como la que se describe en la figura 4, la cual indica que ya esta listo y
configurado el servidor.
6. Posteriormente dirigirse a la base de datos y verificar que los datos fueron insertados en la tabla.