Hola a todos!
Hoy quiero hablar un poco de la publicación de aplicaciones para Windows Phone 7 y 8. Básicamente tendremos que tener dos XAP distintos, uno para cada plataforma. La teoría nos dice que el XAP que hayamos compilado para Windows Phone 7, se desplegará a dispositivos 7.X, mientras que el XAP que hayamos compilado para Windows Phone 8 se desplegará a dispositivos 8.X. Pero como todos sabemos, a veces la teoría falla y he visto muchas confusiones en este aspecto.
Existen dos cosas en particular que debemos tener muy en cuenta a la hora de publicar nuestros XAP: La versión del mismo y los idiomas soportados.
Versión del XAP
Para que un usuario con Windows Phone 8 reciba la versión adecuada, tenemos que indicar en el XAP compilado para Windows Phone 8 una versión superior a la del XAP de Windows Phone 7. En este aspecto debemos ser un poco cautos, si la versión de Windows Phone 7 es, por ejemplo, 1.5.0.42, no pongamos la versión de Windows Phone 8 1.5.0.43, porque si tenemos que desplegar una nueva versión del XAP para Windows Phone 7, pisaremos la versión y nos obligaremos a publicar ambas versiones. En este sentido creo que lo mejor es diferenciar muy claramente los números, por ejemplo teniendo la serie 1.X.X.X para Windows Phone 7 y 2.X.X.X para Windows Phone 8. De esta forma ambas aplicaciones podrán crecer y actualizarse sin pisar la una a la otra.
Idiomas Soportados
Este es uno de los temas más escabrosos y que más problemas a generado a la hora de mantener dos versiones para diferentes sistemas operativos. El marketplace de Windows Phone escoge la versión del XAP para nuestro dispositivo dándole mucha importancia a los idiomas soportados. En ambas versiones, 7.X y 8.X, debemos soportar exactamente los mismos idiomas. Si no coincide la lista de idiomas soportados, por ejemplo porque tengamos más idiomas en la aplicación Windows Phone 8, se enviará la versión de Windows Phone 7, aunque el idioma del dispositivo que se está instalando la app esté soportado en el XAP de Windows Phone 8. Debido a esto tenemos que ser muy cuidadosos con este punto. Antes de añadir un nuevo idioma a cualquiera de las dos versiones, estar seguros de que lo vamos a soportar en ambas y actualizar los dos XAP para evitar cualquier tipo de problema.
Esta forma de dar importancia a los idiomas se ha reportado a Microsoft como un punto importante de mejora. Independientemente de los idiomas soportados, debería pesar más la versión del sistema operativo que los idiomas soportados. En todo caso prefiero obtener la versión de Windows Phone 8 en inglés, que la versión de Windows Phone 7 en español ¿Nos harán caso? Tiempo al tiempo…
¿No tienes tu app publicada para ambas versiones?
¿De verdad? No me lo puedo creer. En Windows Phone 8 tienes acceso a nuevas APIs y controles, en algunos casos mejorando mucho la experiencia del usuario. No es tan difícil mantener dos versiones de tu aplicación si haces las cosas bien, aplicando el patrón MVVM correctamente, como enseño en este artículo.
Concluyendo…
Cuando te plantees soportar ambos sistemas, ten en cuenta estas dos reglas:
-
El número de versión del XAP de Windows Phone 8 siempre debe ser mayor que el de Windows Phone 7, usa series distintas: 1.X.X.X / 2.X.X.X.
-
Hasta que lo arreglen, si es que lo hacen, tienes que soportar los mismos idiomas exactos en ambas versiones, de lo contrario se enviará al usuario la versión de Windows Phone 7.
Observando estos dos puntos, no deberías tener ningún problema al publicar tu app y que tus usuarios reciban la versión correcta en su dispositivo.
Un saludo y Happy Coding!!
Te presentamos nuestra colección de Tips & Tricks de desarrollo de apps para Windows Phone