Apple acaba de confirmar a través de Re/Code la compra de la compañía Burstly, responsables de la plataforma de beta testing TestFlight. La compañía, afincada en Silicon Valley, también es la responsable de la plataforma de analítica de apps FlightPath. No se han hecho públicos más detalles sobre lo que significa dicha compra, los planes de Apple o el precio que se ha pagado por la misma.
TestFlight
Como desarrollador, para poder probar las apps directamente en dispositivos, hay que crear algo que Apple llama perfil de aprovisionamiento. Dicho perfil, puede contener un identificador único de aplicación o un comodín que permita varias apps, un certificado de desarrollo y el identificador único de cada dispositivo autorizado para la prueba. Cuando se instala la app en el dispositivo de prueba, dicho perfil verifica que el ID del dispositivo esté autorizado y si es así ejecuta la app en modo de prueba, aunque no proceda de la App Store.
TestFlight es un servicio creado no hace mucho, que montó una plataforma web que permite subir nuestra aplicación no publicada en la App Store (en un fichero .IPA) y usar los perfiles de aprovisionamiento para permitir instalaciones y tests en remoto. Nada más sencillo que enviar una invitación a un usuario por email, que este abra el mismo y acepte la instalación de un perfil que recupera el identificador del dispositivo y lo envía por mail al administrador de la cuenta. Luego, se da de alta dicho dispositivo en un perfil (y otros muchos) y se pueden enviar versiones para que alguien que esté al otro lado del mundo pueda probar la app que aun se está desarrollando. Para mi, como desarrollador, es una de las herramientas más útiles.
Y no solo eso, TestFlight también permite que encontremos probadores para nuestra app por todo el mundo, que podrán probarla y reportarnos errores. Sin duda, toda una solución cada vez más popular y que incluso tiene soporte también para Android. De igual forma, TestFlight tiene un kit de desarrollo que permite trazar las sesiones, pruebas que se hacen con la app, errores que ha dado, generar eventos…
El presumible objetivo de la compra
Personalmente pienso que esta compra por parte de Apple es muy estratégica y tiene como fin sustituir el actual modelo de negocio de apps corporativas empresariales creando un entorno controlado. A día de hoy, si yo quiero distribuir mis apps sin pasar por la App Store para mi empresa, tras pagar 299$ al año, tengo un certificado que me permite firmar e instalar en todos los dispositivos de mi flota. Pero estos certificados no tienen control y pueden usarse fraudulentamente como sucedió esta misma semana con la app GBA4iOS provocando un problema a Apple que tenía que resolver.
Si Apple sustituye su actual modelo por TestFlight, las empresas no necesitarán tener almacenadas las apps en sus propios servidores como hasta ahora. Las subirán a este nuevo sistema, autorizarán a los usuarios vía email y a sus dispositivos registrados, y podrán llevar un control de cuantas instalaciones y en qué entornos se han hecho, para evitar el uso fraudulento. Es una solución perfecta y mucho más práctica que la actual tanto para Apple como para los usuarios legítimos.
De igual forma, Apple podría proporcionar a todos los desarrolladores un entorno práctico y testado que permita hacer todas las pruebas necesarias de las apps, potenciar un mercado de empresas de beta testing y un sinfín de oportunidades de negocio. Hasta ahora, el desarrollo de apps era una caja negra para Apple hasta que se enviaban a revisar. Ahora podrán estar al tanto de lo que se cocina antes de llegar a las tiendas, lo cual es una estrategia muy inteligente por su parte.
La primera consecuencia de la compra no se ha hecho esperar, pues a partir del 21 de marzo, TestFlight dejará de soportar Android y por lo tanto no podrán subirse nuevas apps y todo el desarrollo pensado para la plataforma de Google se parará. Las que estuvieran en la plataforma hasta ese momento sí se mantendrán.
Creo que es un todo un acierto esta operación por parte de Apple y espero que todo lo que he comentado sobre las grandes ventajas para los desarrolladores se hagan realidad porque las ventajas para el mundo del desarrollo serían muchas.