c# - ¿Guide.IsTrialMode funciona en MonoGame para una aplicación de Windows 8 Store?
windows-8 windows-store-apps (1)
He estado usando XNA para hacer juegos para Xbox y Windows Phone 7. Ahora quiero crear una aplicación metropolitana de Windows 8 Store, usando MonoGame.
He saltado con éxito todos los aros y lo he hecho funcionar, pero estoy teniendo un problema con Guide.IsTrialMode
.
Tengo una lógica diferente dependiendo de si el juego está en modo de prueba o no, que funciona en las otras plataformas, pero cuando pruebo mi aplicación, ya sea en la máquina local o en el simulador, siempre piensa que no he comprado el juego. Mi preocupación es que cuando está en la tienda de aplicaciones y la gente realmente lo compre, la lógica no cambiará.
TL; DR: ¿ Guide.IsTrialMode
funciona en MonoGame para una aplicación de tienda de Windows 8 y cómo puedo probarlo?
EDITAR: en DEPURACIÓN, puede simplemente configurar Guide.SimulateTrialMode
para probar de una forma u otra, parece.
Así que aquí está la información sobre el modo de prueba en Windows 8 Store Apps:
Básicamente, utiliza un bool flag licenseInformation.IsTrial
. Si luego profundiza en el código fuente de MonoGame en GitHub , podemos ver cómo implementan el cheque:
#if WINDOWS_STOREAPP
var licenseInformation = CurrentApp.LicenseInformation;
...
isTrialMode = !licenseInformation.IsActive || licenseInformation.IsTrial;
#endif
Por lo tanto, parece que su LicenseInformation no está configurada para activarse o está configurada como prueba si tiene problemas para realizar las pruebas. El primer enlace contiene información sobre cómo probarlo, pero no estoy seguro de cómo extenderlo a MonoGame:
Ahora, prueba tu aplicación usando llamadas simuladas al servidor de licencias. En JavaScript, C #, Visual Basic o Visual C ++, reemplace las referencias a CurrentApp con CurrentAppSimulator en el código de inicialización de la aplicación. CurrentAppSimulator obtiene información de licencia de prueba específica de un archivo XML llamado "WindowsStoreProxy.xml", ubicado en / Microsoft / Windows Store / ApiData. Si esta ruta y archivo no existen, debe crearlos, ya sea durante la instalación o en tiempo de ejecución. Si intenta acceder a la propiedad CurrentAppSimulator.LicenseInformation sin WindowsStoreProxy.xml presente en esa ubicación específica, obtendrá un error.
Supongo que en el peor de los casos, puede compilar MonoGame usted mismo, cambiando CurrentApp
a CurrentAppSimulator
.