Open borjacano97 opened 2 years ago
Buenas!
Gracias por publicar una issue tan bien formateada.
Efectivamente, ese plugin es un proyecto privado que utilizamos por temas de falta de tiempo en la preparación de un experimento y al parecer aún han quedado algunas de las referencias en esta última versión (aunque por supuesto no estamos distribuyendo el código original del plugin jeje).
La utilidad que tiene ese plugin es cubrir un caso extremo que consiste en que cuando un jugador minimiza o cierra un juego en Android o iOS mientras se está haciendo una copia de seguridad de los datos esta conexión se interrumpe. En su lugar, el plugin permite mantener conexiones activas en segundo plano.
El caso es extremo porque en condiciones normales la copia de seguridad se hace en una fracción de segundo, pero si el usuario contara con mala conectividad y se alargara la subida, podría ocurrir.
Es por ello que aunque la solución no esté en la versión final, aun sin esta utilidad sería posible exportar y utilizar la plataforma sin ningún problema, teniendo en cuenta que este caso puede darse dado que todavía no he tenido tiempo de resolverlo adecuadamente.
Para solucionarlo la opción principal es que se eliminen las referencias a este proyecto y prevengáis a los usuarios de este caso extremo en el caso de que vayan a utilizar la aplicación hasta que podamos implementar una solución que se pueda distribuir.
Para ello, en el archivo https://github.com/e-ucm/uAdventure/blob/master/Assets/uAdventureAnalytics/Plugins/Simva/Util/RequestsUtil.cs deberemos eliminar las lineas:
Al principio del fichero:
#if UNITY_ANDROID || UNITY_IOS
using Vuopaja;
#endif
En el método DoRequest:
#if UNITY_ANDROID || UNITY_IOS
if (inBackground)
{
var webRequestWrapper = new WebRequestWrapper();
webRequestWrapper.Failed += (wrappedRequest, error) =>
{
backgroundError = error;
};
asyncRequest = webRequestWrapper.Send(webRequest, 100);
}
else
{
asyncRequest = webRequest.SendWebRequest();
}
#else
y unas lineas más abajo el correspondiente:
#endif
Disculpad las molestias, este año ha sido complicado y no he podido lanzar una versión definitiva pero esto se solucionará en la próxima versión.
Versión de software
Plataforma Objetivo:
Android
Versión uAdventure:uAdventure v1.2.0 Release Candidate 1
Versión Unity:2020.3.13f
Mensaje de error:
Assets\uAdventureAnalytics\Plugins\Simva\Util\RequestsUtil.cs(9,7): error CS0246: The type or namespace name 'Vuopaja' could not be found (are you missing a using directive or an assembly reference?)
Descripción del error
Cuando intentamos crear una build para Android Unity lanza un error que impide la compilación.
Replicación del problema
File -> Build project... -> Build project... -> Android -> Export
Cosas que hemos probado
Hemos intentado crear un nuevo proyecto nuevo, vacío. En cuanto cambiamos la plataforma a Android salta el error. Hemos mirado a ver de qué se trata eso de Vuopaja y lo único que hemos encontrado es un plugin, que vale 15€. No creo que este proyecto de código abierto de una entidad académica pública esté usando un plugin propietario.
Podemos dar acceso a nuestro repositorio privado si se nos contacta. Aquí dejo mi correo: borcano@ucm.es
Misc
Nuestro proyecto funciona para Windows, es cuando cambiamos la plataforma que se intentan cargar esos binarios los cuales no encuentra. Asumimos que es un problema con el paquete de Unity porque nos sigue ocurriendo en un proyecto vacío.