Buenas, tengo un problema. Estoy realizando una aplicación Android que tiene que conectarse a una base de datos MySQL remota. Para probar, he creado la base de datos en mi portátil y estoy intentando acceder a ella desde un emulador móvil (Genymotion).
La forma en la que me conecto es la siguiente:
try
{
Class.forName("com.mysql.jdbc.Driver");
conexion= DriverManager.getConnection("jdbc:mysql://192.168.10.98:3306/RESERVA_PADEL","root","root");
}catch(ClassNotFoundException cnfe)
{
Toast.makeText(Login.this, "NO SE ENCUENTRA LA CLASE", Toast.LENGTH_LONG).show();
}catch(SQLException sqle)
{
System.out.println("****************************** **************");
sqle.printStackTrace();
System.out.println("********CAUSA*********:"+sqle. getCause());
System.out.println("********MENSAJE********:"+sqle .getMessage());
Toast.makeText(Login.this, "NO SE PUEDE CONECTAR A LA BASE DE DATOS", Toast.LENGTH_LONG).show();
}
Este código lo tengo en el método onCreate de mi aplicación y tengo el conector añadido en mis librerias. También he añadido estos permisos en el AndroidManifest:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_ST ATE" />
Pero cuando ejecuto me sale este error
:
com.mysql.jdbc.exceptions.jdbc4.CommunicationsExce ption: Communications link failure
No se que es lo que puede fallar. He visto por internet que hay otras maneras de hacerlo, como hacer un Web Service usando PHP o JSON.
Por favor espero que puedan ayudarme, decirme el posible error o como solucionarlo o en caso de ser obligatoriamente necesario hacer un Web Service, por favor diganme como hacerlo de forma sencilla ya que en ese tema soy novato.
Gracias de antemano.