Jump to content
Sign in to follow this  
athos07

myapp compilada en android no se conecta al Servidor

Recommended Posts

Buenos dias:

Vengo intentando solucionar un conflicto que me surgio al testear mi aplicacion en un dispositivo con OS Android. La aplicacion consiste en hacer consultas a una base de datos que se encuentra en un hosting externo. Dentro de Unity la aplicación logra conectarse correctamente a dicho server mediante MySql, pero al compilar el programa y testearlo, resulta ignorar por completo la conexion. Desconozco si el problema surge desde los permisos del hosting para permitir el acceso a cierto usuarios o si al compilar en Android necesito solicitar permisos al usuario del dispositivo para realizar dichas conexiones. Alguien tuvo este conflicto o tiene idea de como podria solucionarse?

desde ya muchas gracias.

 

 

Share this post


Link to post
Share on other sites

Activa la opción de Script Debug, seguramente la librería que estas utilzando para conectarte a MySQL no es compatible con android.

Share this post


Link to post
Share on other sites

hola @francoe1 gracias por responder. ya probe y no hubo ningun resultado.

hola @leocub58 gracias por responder. estoy usando un hosting free, por ende puede que quizas no tenga certificado SSL. voy a investigar sobre el tema y te confirmo si era eso. gracias

Share this post


Link to post
Share on other sites

@leocub58 el sitio web tiene SSL certificado. dudo que sea eso lo que ocasione el problema. gracias igual por la ayuda. seguire investigando

Share this post


Link to post
Share on other sites
5 minutes ago, athos07 said:

@leocub58 el sitio web tiene SSL certificado. dudo que sea eso lo que ocasione el problema. gracias igual por la ayuda. seguire investigando

Entonces es muy probable que tenga las conexiones externas al dominio bloqueadas. Es muy común en hostings frees. ¿Qué servicio de hosting estás utilizando?

Share this post


Link to post
Share on other sites
12 minutes ago, leocub58 said:

Entonces es muy probable que tenga las conexiones externas al dominio bloqueadas. Es muy común en hostings frees. ¿Qué servicio de hosting estás utilizando?

Tambien sospecho que sea eso. estoy utiliando remotemysql.com

Share this post


Link to post
Share on other sites
1 hour ago, francoe1 said:

¿De qué manera te estas conectando a la base de datos?

A traves de MySql

Share this post


Link to post
Share on other sites

Uso esta libreria MySql.Data.MySqlClient; este es el codigo con el que logro conectarme, al menos desde el editor de unity

conString = "Server=server;" +
        "Database=dataBaseName;" +
        "User ID=username;" +
        "Password=password;" +
        "pooling=false;" +
        "CharSet=utf8";

myQuery = "SELECT Nombre FROM CLIENTES";

MySqlConnection conn = new MySqlConnection(conString);

CreateMySqlDataReader(myQuery, conn);

 

Share this post


Link to post
Share on other sites

Intenta agregar Encrypt=true; SslMode=Preferred;

Sin embargo creo que es un problema de la librería con Android, estoy seguro de que existe un problema y necesitas un wrapper, ahora mismo no lo recuerdo

Share this post


Link to post
Share on other sites
4 hours ago, francoe1 said:

Intenta agregar Encrypt=true; SslMode=Preferred;

Sin embargo creo que es un problema de la librería con Android, estoy seguro de que existe un problema y necesitas un wrapper, ahora mismo no lo recuerdo

intentare agregar eso. Por otra parte, se me ocurrio conectarlo al Android Device Monitor. para intentar captar los mensajes de consola del dispositivo en el momento que deberia conectarse al server. y capture los siguientes errores

error.png

Share this post


Link to post
Share on other sites

Intenta comprobar si pasa en diferente versiones de Android. Si solo pasa en las más nuevas puede que sea por permisos

Share this post


Link to post
Share on other sites

Buscando el error aparece una referencia en:  https://answers.unity.com/questions/42955/codepage-1252-not-supported-works-in-editor-but-no.html?_ga=2.247957831.1540783762.1588396663-1855270041.1569288163

En resumen, la página de códigos usada por ese cliente está en una DLL que no está disponible en el player, pero sí en el editor. Se trata de I18N.dll and I18N.West.dll, y parece que puedes copiarlas a tu proyecto para que se incluyan (mala solución).

Alternativamente, utiliza una versión de la bibilioteca cliente de MySQL que esté construida para usar UTF-8 por defecto. Porque en general, me parece mala idea usar como transporte una codificación que no sea UTF-8 (no sé por qué alguien usaría 1252 por defecto hoy en día, igual es la de tu sistema Android o no sé).

O alternativamente, y lo que te recomiendo buscar, es asegúrate de usar UTF-8 en tu propio código, así evitarás sorpresas en función del dispositivo en el que te ejecutes. No sé si es posible hacer esto con la biblioteca MySQL que usas, porque tu cadena de conexión ya indica utf8, quizá (a ver si hay suerte) prueba a añadir el punto y coma que falta tras "CharSet=utf8":

conString = "Server=server;" +
        "Database=dataBaseName;" +
        "User ID=username;" +
        "Password=password;" +
        "pooling=false;" +
        "CharSet=utf8;";

Aunque yo no creo que eso debiera ser el problema. Tampoco me convence ese "pooling" ahí en medio, y según la documentación, (https://dev.mysql.com/doc/connector-net/en/connector-net-connections-string.html) ese "User ID" debería ser simplemente "uid". Tampoco sé si las mayúsculas / minúsculas importan, he encontrado ejemplos en ambos formatos.

A ver si te sirve algo. Ya comentarás.

Y por curiosidad, ese "databasename", "username" o "password" ¿tienen acentos o caracteres no-ASCII?.

Edited by J Montes

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

UnitySpain © Todos los derechos reservados 2020
×
×
  • Create New...