Android – Ruby on Rails – MySQL
He empezado a trabajar en una aplicación de Android para la que necesitamos utilizar MySQL como base de datos y Ruby on Rails para el código del lado del servidor. Vamos a utilizar SQLLite también en el dispositivo (se sincronizan tanto DB como y cuando sea necesario). Busqué en la web y no pude encontrar tutoriales / ejemplos relevantes que pudieran servir como base para empezar.
He ido a través de tutoriales de MySQL y ROR, pero todavía tiene confusión en la conexión de Android con ROR.
- Cómo comparar representaciones de cadena de dobles si termina en .00
- ¿Cómo obtener el recuento de filas de una consulta en Android usando SQLite?
- Android: SQLite usando base de datos incorrecta
- INSERTAR O IGNORAR tabla con la clave AUTOINCREMENT en Android
- SQLite ordena caracteres especiales alfabéticamente
¿Puede alguien compartir algunos tutoriales relevantes / fragmento de código que puede explicar el enlace completo de las tecnologías. Quiero decir cómo enviar datos desde un dispositivo Android a MySQL y viceversa. Conozco el concepto teóricamente pero no sé cómo y por dónde empezar.
Mis sinceras disculpas por hacer una pregunta tan básica o si suena ambigua pero soy un principiante y necesito completar esta tarea. Gracias de antemano..
- Actualizaciones de la base de datos Sqlite activan el servicio para actualizar a través de Content Observer
- Cómo establecer una columna como indexador único en Sqlite
- Sqlite en Android: Cómo crear una función sqlite dist db - que se utilizará en la aplicación para calcular la distancia utilizando lat, largo
- Copia de seguridad de Android y restauración de la base de datos desde y hacia la tarjeta SD
- Prácticas recomendadas para unir tablas y notificar a ContentObservers en Android ContentProvider
- Bases de datos de sincronización Mysql SQLite
- ¿Cuán cuidado debo tener con el hilo de seguridad al crear métodos / actividades que interactúan con la base de datos SQLite?
- Cómo almacenar datos en la base de datos sqlite con jQuery-mobile dreamviewer cc con phonegap en android?
Aquí hay una breve descripción de lo que debe saber para lograr su objetivo. No voy a ir tan lejos en los detalles, sobre todo porque nunca he utilizado personalmente RoR. Tenga en cuenta que algunas de estas partes podrían no estar relacionadas exactamente con RoR, pero la idea general detrás de ella todavía se aplica. Voy a dejar a usted a la investigación y averiguar cómo implementar cada componente individual.
El flujo general de todo es como sigue:
Aplicación para Android <==> Red <==> Servicio Web <==> MySQL
Observe las flechas de doble filo ya que los datos fluirán en ambas direcciones.
La Android App
es el cliente, y el Web Service
y la MySQL
datos MySQL
se encuentran en el Web Server
. Sólo incluí la parte de red para completar, pero no debería tener que hacer nada una vez que los datos se han enviado a la red.
Una breve descripción de cada sección:
Aplicación Android:
La aplicación de Android es el cliente que envía y recupera datos del servidor Web. Estoy asumiendo que en su aplicación que va a permitir al usuario hacer algunas tareas que en esencia se convierte en los datos que desea enviar al servidor en algún momento.
Tomemos por ejemplo, el usuario debe ser capaz de introducir su nombre y el animal favorito. Digamos que hay un botón "Enviar" real que el usuario puede hacer clic. Cuando se hace clic en este botón "Enviar", se debe encerrar los datos en un formato adecuado para enviar a través de la red. Dos de los más comunes son JSON
y XML
. Una vez que los datos se han formateado correctamente, querrá enviar los datos al servidor utilizando algún tipo de protocolo de red, como HTTP
. Para enviar los datos, por supuesto debe tener alguna URL
como destino. Digamos que el objetivo es www.example.com/webservice.php
. Este objetivo es nuestro Servicio Web ubicado en el Servidor Web.
Una vez que usted envía los datos, el servidor responderá con algunos datos en qué punto usted puede hacer lo que usted quiere con él. Tal vez mostrarlo al usuario, o pegarlo en una SQLite
datos SQLite
, o incluso ambos.
Lo más importante a recordar es que no hay magia en curso. Todo lo que acabo de describir se implementará en código Java que escribirá en su aplicación Android en algún momento.
Ideas clave que debe investigar más y averiguar cómo implementar en código Java:
- JSON y XML
- HTTP en Java
- Descanso y jabón
- Aquí hay un excelente vídeo sobre las posibles formas de configurar la estructura de tu aplicación de Android.
- Asegúrese de que está realizando todas las operaciones de red en su aplicación de Android en un hilo diferente. Un método fácil de usar es un servicio de intención .
Servicio web:
Esta es a menudo la parte más confusa. Un Web Service
es simplemente un punto de entrada para los clientes que intentan acceder al Web Server
. Mi explicación aquí puede ser ligeramente diferente cuando se utiliza RoR
, pero la misma idea se aplica. Tenga en cuenta que la URL
destino era www.example.com/webservice.php
. El servicio web es literalmente el código PHP
que existe en el servidor web, llamado webservice.php
. En su aplicación para Android, cuando envía datos a la URL
destino mediante HTTP
, el código de servicio Web se ejecutará en el servidor (y también tendrá acceso a los datos que le envió). En el interior de su código de servicio Web, básicamente se extraerá los datos (que es en algún formato como JSON), agarrando las partes necesarias y, a continuación, hacer algo con él. En este caso lo más probable es que consulte la base de datos. En PHP es fácil escribir código que conecta y consulta una base de datos MySQL que también se está ejecutando en el servidor. Cuando la respuesta de la base de datos es recuperada por el servidor Web, puede devolverla a la aplicación de Android. Al igual que antes, recuerde, no hay magia pasando. Todas estas ideas se implementan escribiendo algún código.
Principales ideas para la investigación:
- Servicio web Ruby on Rails
- Cómo acceder a una base de datos MySQL con Ruby on Rails
Base de datos MySQL:
Aquí es donde almacenará los datos en el servidor web. No voy a ir tan en profundidad aquí, porque esto es sólo va a requerir que usted hace un montón de lectura sobre cómo configurar una base de datos MySQL en un servidor web. También es importante que aprenda a crear las consultas adecuadas como SELECT
, INSERT
y así sucesivamente.
Principales ideas para investigar:
Cómo configurar una base de datos MySQL en un servidor web
Si necesita alguna aclaración, avíseme!
- Donde el listview almacena la imagen en android cuando se descarga desde el servidor
- Cómo utilizar appcompat-v7 con Android API 19