Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 16/09/11, 09:54:59
Array

[xs_avatar]
softruz softruz no está en línea
Usuario novato en la web
 
Fecha de registro: jun 2009
Mensajes: 15
Modelo de smartphone: HTC Touch

Atacar a MySQL directamente ANDROID

Muy buenas, estoy buscando algún código para que podamos acceder a MySQL con Android directamente (sin PHP), se puede usar JDBC para ello?

Un Saludo.
Responder Con Cita


  #2  
Viejo 16/09/11, 12:12:09
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
No se puede, al menos con el SDK básico, existen SDKs de pago que si permiten la conexión a distintos tipos de bases de datos (incluido MySQL), que lo que hacen es programar el "driver" dentro de sus librerías y a ti te facilitan el API.

El motivo por el que ocurre esto (al menos es mi teoría) es la guerra existente entre Oracle y Google por la demanda que le ha puesto la primera a la segunda por violar las patentes de Java (en mi opinión sin fundamento, pero eso lo tendrá que decir un juez).

Yo esto lo he resuelto creando una página PHP a la que mediante POST le mando la sentencia SQL (si, inseguridad a tope, pero es lo que hay), y luego el resultado lo recojo en un JSON.

Para amortiguar el efecto lo mejor sería crear vistas y que el usuario en el PHP solo tenga acceso a esas vistas.
Responder Con Cita
  #3  
Viejo 19/09/11, 09:55:01
Array

[xs_avatar]
softruz softruz no está en línea
Usuario novato en la web
 
Fecha de registro: jun 2009
Mensajes: 15
Modelo de smartphone: HTC Touch

Muy buenas, alguien sabe alguna librería de pago para haga esto y no tener que usar PHP.

Un Saludo.
Responder Con Cita
  #4  
Viejo 20/09/11, 17:31:20
Array

[xs_avatar]
RubenGM85 RubenGM85 no está en línea
Miembro del foro
 
Fecha de registro: mar 2010
Localización: Girona
Mensajes: 435
Modelo de smartphone: LG Nexus 5
Tu operador: Vodafone
Descarga el conector oficial y gratuito de MySQL para Java (link) y haz algo tal que así:

Código:
	private Connection conecta() {
		try {
			String url = "jdbc:mysql://IPdelServidor:3306/nombre_de_base_de_datos";
			con = (Connection) DriverManager.getConnection( url,"usuario", "password");
		} catch (Exception e) {
		}
	}
Para hacer una query:

Código:
		try {
			PreparedStatement st = (PreparedStatement)con.prepareStatement("SELECT * FROM tabla WHERE algo LIKE ?");
			st.setString(1, "algunString");
			ResultSet res = st.executeQuery();
			res.first();
			while(!res.isAfterLast()) {
				int id = res.getInt("id");
				String nombre = res.getString("campoNombre");
				//etc
				res.next();
			}
		} catch (Exception e) {
			Log(e);
		}
¿Quieres hacer un UPDATE o DELETE?
Código:
			try {
				//Si tienes un String con la query entera, usa Statement. Si tienes que meterle variables usa PreparedStatement
				st = (Statement)con.createStatement();
				st.execute("DELETE FROM tabla WHERE id = 800"); //o p.ej.: UPDATE tabla SET meh = 'asd' WHERE id = 2
				st.close();
			} catch (Exception e) {
				Log(e);
			}
Recuerda acabar siempre haciendo .close() de las conexiones, los results y los statements.
Responder Con Cita
  #5  
Viejo 22/09/11, 10:04:45
Array

[xs_avatar]
softruz softruz no está en línea
Usuario novato en la web
 
Fecha de registro: jun 2009
Mensajes: 15
Modelo de smartphone: HTC Touch

Muchas gracias, me podrias decir, ¿ como instalo lo que me tengo que descargar en eclipse?
Responder Con Cita
  #6  
Viejo 22/09/11, 10:06:16
Array

[xs_avatar]
softruz softruz no está en línea
Usuario novato en la web
 
Fecha de registro: jun 2009
Mensajes: 15
Modelo de smartphone: HTC Touch

o mejor tendrías un projecto pequeño con todo esto para yo ver como se hace, la cuestion es que ya lo he intentado pero no me lee el .jar de java mysql.

Un Saludo y mil gracias.
Responder Con Cita
  #7  
Viejo 22/09/11, 10:07:50
Array

[xs_avatar]
RubenGM85 RubenGM85 no está en línea
Miembro del foro
 
Fecha de registro: mar 2010
Localización: Girona
Mensajes: 435
Modelo de smartphone: LG Nexus 5
Tu operador: Vodafone
Botón derecho en el proyecto - Properties - Java Build Path - Add External JARs
Responder Con Cita
  #8  
Viejo 22/09/11, 10:38:54
Array

[xs_avatar]
softruz softruz no está en línea
Usuario novato en la web
 
Fecha de registro: jun 2009
Mensajes: 15
Modelo de smartphone: HTC Touch

Muchas Gracias por todo ya te comento cuando lo pruebe.

Un Saludo.
Responder Con Cita
  #9  
Viejo 23/09/11, 15:37:14
Array

[xs_avatar]
L3st L3st no está en línea
Usuario muy activo
 
Fecha de registro: jul 2010
Localización: Madrid
Mensajes: 594
Modelo de smartphone: Galaxy S2
Tu operador: Orange
Muy buena, la verdad es que yo he usado JS con JSON y es bastante bastante complicado
Responder Con Cita
  #10  
Viejo 27/09/11, 00:10:31
Array

[xs_avatar]
jmico jmico no está en línea
Usuario muy activo
· Votos compra/venta: (11)
 
Fecha de registro: jun 2011
Localización: knet sur Mer
Mensajes: 1,213
Modelo de smartphone: Galaxy S7, Teclast X98 pro
Tu operador: Movistar
Android - MySql

Alguien que haya probado esta solución y le funcione.
Al generar el proyecto (BUILD) da el siguiente error.


Conversion to Dalvik format failed with error 1.


Saludos y gracias.
Responder Con Cita
  #11  
Viejo 04/10/11, 16:25:07
Array

[xs_avatar]
jmico jmico no está en línea
Usuario muy activo
· Votos compra/venta: (11)
 
Fecha de registro: jun 2011
Localización: knet sur Mer
Mensajes: 1,213
Modelo de smartphone: Galaxy S7, Teclast X98 pro
Tu operador: Movistar
Android y MySQL

Alguien que haya podido acceder a MySQL desde Android, como lo ha hecho.
Versiones de JDBC, Eclipse y demás.
Saludos y gracias.
Responder Con Cita
  #12  
Viejo 04/10/11, 17:21:35
Array

[xs_avatar]
RubenGM85 RubenGM85 no está en línea
Miembro del foro
 
Fecha de registro: mar 2010
Localización: Girona
Mensajes: 435
Modelo de smartphone: LG Nexus 5
Tu operador: Vodafone
 Cita: Originalmente Escrito por jmico Ver Mensaje
Alguien que haya probado esta solución y le funcione.
Al generar el proyecto (BUILD) da el siguiente error.


Conversion to Dalvik format failed with error 1.


Saludos y gracias.
Vaya, no me avisó de este mensaje :S

Ese error lo he visto a veces por XMLs incorrectos, por poner mayúsculas donde no deja o cosas así. Abre la vista de errores y busca dónde ha fallado la conversión a Dalvik.
Responder Con Cita
  #13  
Viejo 04/10/11, 18:09:06
Array

[xs_avatar]
jmico jmico no está en línea
Usuario muy activo
· Votos compra/venta: (11)
 
Fecha de registro: jun 2011
Localización: knet sur Mer
Mensajes: 1,213
Modelo de smartphone: Galaxy S7, Teclast X98 pro
Tu operador: Movistar
 Cita: Originalmente Escrito por RubenGM85 Ver Mensaje
Vaya, no me avisó de este mensaje :S

Ese error lo he visto a veces por XMLs incorrectos, por poner mayúsculas donde no deja o cosas así. Abre la vista de errores y busca dónde ha fallado la conversión a Dalvik.

Ok, gracias en cuanto lo pruebe digo algo pues creo que es un tema interesante. (Para mi mucho).
Saludos Jose.
Responder Con Cita
  #14  
Viejo 17/02/12, 22:18:25
Array

[xs_avatar]
capovich capovich no está en línea
Miembro del foro
 
Fecha de registro: jun 2010
Localización: Venezuela
Mensajes: 54
Modelo de smartphone: HTC HD2
Tu operador: Movistar
Buenas tardes soy nuevo por estas zonas,

Estoy realizando una aplicación en android que requiero conectarla a una base de datos mysql pero no logro hacerlo

mi pregunta es si alguno de uds tiene un ejemplo ya realizado, algo sencillo incluir eliminar modificar solo dos campos con lo demas tratare de ver como me las arreglo

Gracias de antemano.
__________________
---------------------------------
Gracias de antemano,
Darry Castro
http://www.aripagua.com
El hombre es tan fuerte como el Hierro, pero el dinero tan corrosivo como el Mar...!
Responder Con Cita
  #15  
Viejo 09/02/13, 11:41:39
Array

[xs_avatar]
russellhoff russellhoff no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: ene 2010
Localización: Laudio, Araba
Mensajes: 1,640
Modelo de smartphone: S8, Note 3, HTC One X, Samsung Galaxy S, HTC Magic
Tu operador: Euskaltel Móvil
Buenos días amigos. Quizás vengo algo tarde pero bueno.

Estoy con mi proyecto fin de carrera, empezando,y me he dado cuenta de que hay 2 formas de conectarse a una base de datos externa:

- Crear un servicio web (soap o rest) e invocarlo en la app de android.
- Crear un script o programilla que responda a peticiones HTTP get o post (como han dicho arriba, más o menos).

[ Enlace: http://stackoverflow.com/questions/9...ysql-connector ]

Ejemplo: http://codeoncloud.blogspot.com.es/2...ql-client.html
Seguiré investigando.
__________________
Responder Con Cita
  #16  
Viejo 10/02/13, 16:50:16
Array

[xs_avatar]
rinxe rinxe no está en línea
Miembro del foro
 
Fecha de registro: mar 2009
Localización: Teruel
Mensajes: 260
Modelo de smartphone: Xiaomi Mi5S
Tu operador: Yoigo
Tengo una pregunta para los que entendeis este tema.

Que desventajas tiene usar una conexion a MySQL a traves de scripts php??
Aunque el servidor sea contratado y con un buen cortafuegos??

Yo de momento voy tirando con este metodo, GET y POST.

Última edición por rinxe Día 10/02/13 a las 16:55:34.
Responder Con Cita
  #17  
Viejo 10/02/13, 17:10:02
Array

[xs_avatar]
mocelet mocelet no está en línea
Desarrollador
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,202
Tu operador: -

 Cita: Originalmente Escrito por rinxe Ver Mensaje
Tengo una pregunta para los que entendeis este tema.

Que desventajas tiene usar una conexion a MySQL a traves de scripts php??
Aunque el servidor sea contratado y con un buen cortafuegos??

Yo de momento voy tirando con este metodo, GET y POST.
A priori ninguna, el pecado es conectarse directamente desde Android porque significa meter el usuario y la clave de la base de datos en el código de la aplicación, que si te lo descompilan te hacen la pascua.

Mientras haya seguridad, da igual si es un script de PHP, si es un web service o si te inventas un protocolo basado en sockets TCP, por ejemplo.
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
Responder Con Cita
  #18  
Viejo 10/02/13, 17:22:19
Array

[xs_avatar]
rinxe rinxe no está en línea
Miembro del foro
 
Fecha de registro: mar 2009
Localización: Teruel
Mensajes: 260
Modelo de smartphone: Xiaomi Mi5S
Tu operador: Yoigo
 Cita: Originalmente Escrito por mocelet Ver Mensaje
A priori ninguna, el pecado es conectarse directamente desde Android porque significa meter el usuario y la clave de la base de datos en el código de la aplicación, que si te lo descompilan te hacen la pascua.

Mientras haya seguridad, da igual si es un script de PHP, si es un web service o si te inventas un protocolo basado en sockets TCP, por ejemplo.
Ya se por donde va el tema, en mi caso me cedieron un hosting y dominio de 1&1 y ahi es donde alojo los scripts php, en la aplicacion simplemente le indico la direccion web de ese script.
Responder Con Cita
  #19  
Viejo 10/02/13, 17:25:03
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
 Cita: Originalmente Escrito por rinxe Ver Mensaje
Tengo una pregunta para los que entendeis este tema.

Que desventajas tiene usar una conexion a MySQL a traves de scripts php??
Aunque el servidor sea contratado y con un buen cortafuegos??

Yo de momento voy tirando con este metodo, GET y POST.
No es que tenga desventajas, es que es la forma correcta de hacerlo.

Yo ahora además uso OAuth al iniciar la conexión, obtienes los 2 tokens y eso es lo que usas durante esa sesión.
Responder Con Cita


  #20  
Viejo 10/02/13, 17:37:00
Array

[xs_avatar]
rinxe rinxe no está en línea
Miembro del foro
 
Fecha de registro: mar 2009
Localización: Teruel
Mensajes: 260
Modelo de smartphone: Xiaomi Mi5S
Tu operador: Yoigo
 Cita: Originalmente Escrito por kriogeN Ver Mensaje
No es que tenga desventajas, es que es la forma correcta de hacerlo.

Yo ahora además uso OAuth al iniciar la conexión, obtienes los 2 tokens y eso es lo que usas durante esa sesión.
Okk, es que esto de ir de autonomo aprendiendo a programar, es jodido ehh, jejej. Sin nadie que te ayude, solo a traves de ejemplos. Pero bueno se puede decir que le voy pegando bastante.

Desconocia tambien lo de OAuth pero ya le estoy hechando un ojo en Android Developers. gracias por la info

En mi caso la putada es que no se nada de php, lo tengo hecho a traves de ejemplos modificandolos un poco y consultado una columna entera. Si el ultimo registro es igual al de mi base de datos, la app no hace nada y sino lo actualiza.

El tema seria hacer una consulta al ultimo registro de MySQL y si no esta en la base de datos, que se actualice, para consumir los minimos recursos de red.
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 04:04:03 (GMT +2)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /