Home Menu

Menu



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


 
Herramientas
  #1  
Viejo 16/09/11, 09:54:59
Avatar de softruz
softruz softruz no está en línea
Usuario novato en la web
Mensajes: 15
 
Fecha de registro: jun 2009
Mensajes: 15
Modelo de smartphone: HTC Touch
Mencionado: 0 comentarios
Tagged: 0 hilos
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
Avatar de kriogeN
kriogeN kriogeN no está en línea
Colaborador/a
Mensajes: 4,637
Compra y venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Versión de ROM: CM13 - CM 11
Tu operador: Vodafone
Mencionado: 60 comentarios
Tagged: 3 hilos
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
Avatar de softruz
softruz softruz no está en línea
Usuario novato en la web
Mensajes: 15
 
Fecha de registro: jun 2009
Mensajes: 15
Modelo de smartphone: HTC Touch
Mencionado: 0 comentarios
Tagged: 0 hilos
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
Avatar de RubenGM85
RubenGM85 RubenGM85 no está en línea
Miembro del foro
Mensajes: 435
 
Fecha de registro: mar 2010
Localización: Girona
Mensajes: 435
Modelo de smartphone: LG Nexus 5
Versión de ROM: Stock
Tu operador: Vodafone
Mencionado: 5 comentarios
Tagged: 0 hilos
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
Avatar de softruz
softruz softruz no está en línea
Usuario novato en la web
Mensajes: 15
 
Fecha de registro: jun 2009
Mensajes: 15
Modelo de smartphone: HTC Touch
Mencionado: 0 comentarios
Tagged: 0 hilos
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
Avatar de softruz
softruz softruz no está en línea
Usuario novato en la web
Mensajes: 15
 
Fecha de registro: jun 2009
Mensajes: 15
Modelo de smartphone: HTC Touch
Mencionado: 0 comentarios
Tagged: 0 hilos
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
Avatar de RubenGM85
RubenGM85 RubenGM85 no está en línea
Miembro del foro
Mensajes: 435
 
Fecha de registro: mar 2010
Localización: Girona
Mensajes: 435
Modelo de smartphone: LG Nexus 5
Versión de ROM: Stock
Tu operador: Vodafone
Mencionado: 5 comentarios
Tagged: 0 hilos
Botón derecho en el proyecto - Properties - Java Build Path - Add External JARs
Responder Con Cita
  #8  
Viejo 22/09/11, 10:38:54
Avatar de softruz
softruz softruz no está en línea
Usuario novato en la web
Mensajes: 15
 
Fecha de registro: jun 2009
Mensajes: 15
Modelo de smartphone: HTC Touch
Mencionado: 0 comentarios
Tagged: 0 hilos
Muchas Gracias por todo ya te comento cuando lo pruebe.

Un Saludo.
Responder Con Cita
  #9  
Viejo 23/09/11, 15:37:14
Avatar de L3st
L3st L3st no está en línea
Usuario muy activo
Mensajes: 594
 
Fecha de registro: jul 2010
Localización: Madrid
Mensajes: 594
Modelo de smartphone: Galaxy S2
Tu operador: Orange
Mencionado: 16 comentarios
Tagged: 0 hilos
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
Avatar de jmico
jmico jmico no está en línea
Usuario muy activo
Mensajes: 1,213
Compra y venta: (11)
 
Fecha de registro: jun 2011
Localización: knet sur Mer
Mensajes: 1,213
Modelo de smartphone: Galaxy S7, Teclast X98 pro
Versión de ROM: Stock & root
Versión de Radio: TuneIn
Tu operador: Movistar
Mencionado: 3 comentarios
Tagged: 0 hilos
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
Avatar de jmico
jmico jmico no está en línea
Usuario muy activo
Mensajes: 1,213
Compra y venta: (11)
 
Fecha de registro: jun 2011
Localización: knet sur Mer
Mensajes: 1,213
Modelo de smartphone: Galaxy S7, Teclast X98 pro
Versión de ROM: Stock & root
Versión de Radio: TuneIn
Tu operador: Movistar
Mencionado: 3 comentarios
Tagged: 0 hilos
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
Avatar de RubenGM85
RubenGM85 RubenGM85 no está en línea
Miembro del foro
Mensajes: 435
 
Fecha de registro: mar 2010
Localización: Girona
Mensajes: 435
Modelo de smartphone: LG Nexus 5
Versión de ROM: Stock
Tu operador: Vodafone
Mencionado: 5 comentarios
Tagged: 0 hilos
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
Avatar de jmico
jmico jmico no está en línea
Usuario muy activo
Mensajes: 1,213
Compra y venta: (11)
 
Fecha de registro: jun 2011
Localización: knet sur Mer
Mensajes: 1,213
Modelo de smartphone: Galaxy S7, Teclast X98 pro
Versión de ROM: Stock & root
Versión de Radio: TuneIn
Tu operador: Movistar
Mencionado: 3 comentarios
Tagged: 0 hilos
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
Avatar de capovich
capovich capovich no está en línea
Miembro del foro
Mensajes: 54
 
Fecha de registro: jun 2010
Localización: Venezuela
Mensajes: 54
Modelo de smartphone: HTC HD2
Versión de ROM: 3.14.412.2 (04666) ESP
Versión de Radio: 2.06.51.07
Tu operador: Movistar
Mencionado: 0 comentarios
Tagged: 0 hilos
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.
Responder Con Cita
  #15  
Viejo 09/02/13, 11:41:39
Avatar de russellhoff
russellhoff russellhoff no está en línea
Usuario muy activo
Mensajes: 1,640
Compra y 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
Versión de ROM: Oreo
Tu operador: Euskaltel Móvil
Mencionado: 1 comentarios
Tagged: 0 hilos
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
Avatar de rinxe
rinxe rinxe no está en línea
Miembro del foro
Mensajes: 260
 
Fecha de registro: mar 2009
Localización: Teruel
Mensajes: 260
Modelo de smartphone: Xiaomi Mi5S
Versión de ROM: LineageOS 14.1
Versión de Radio: Los 40
Tu operador: Yoigo
Mencionado: 0 comentarios
Tagged: 0 hilos
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
Avatar de mocelet
mocelet mocelet no está en línea
Desarrollador
Mensajes: 2,203
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -
Mencionado: 17 comentarios
Tagged: 2 hilos
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.
Responder Con Cita
  #18  
Viejo 10/02/13, 17:22:19
Avatar de rinxe
rinxe rinxe no está en línea
Miembro del foro
Mensajes: 260
 
Fecha de registro: mar 2009
Localización: Teruel
Mensajes: 260
Modelo de smartphone: Xiaomi Mi5S
Versión de ROM: LineageOS 14.1
Versión de Radio: Los 40
Tu operador: Yoigo
Mencionado: 0 comentarios
Tagged: 0 hilos
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
Avatar de kriogeN
kriogeN kriogeN no está en línea
Colaborador/a
Mensajes: 4,637
Compra y venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Versión de ROM: CM13 - CM 11
Tu operador: Vodafone
Mencionado: 60 comentarios
Tagged: 3 hilos
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
Avatar de rinxe
rinxe rinxe no está en línea
Miembro del foro
Mensajes: 260
 
Fecha de registro: mar 2009
Localización: Teruel
Mensajes: 260
Modelo de smartphone: Xiaomi Mi5S
Versión de ROM: LineageOS 14.1
Versión de Radio: Los 40
Tu operador: Yoigo
Mencionado: 0 comentarios
Tagged: 0 hilos
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   HTCMania > Todo sobre Android > Programación y Desarrollo para Android

Herramientas

Reglas de Mensajes
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Las caritas están On
Código [IMG] está On
Código HTML está Off

Saltar a Foro



Hora actual: 07:55:46 (GMT +2)

Cookies
Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.
 
HTCMania: líderes desde el 2007