Llevo ya más de un par de meses currando y me he dedicado todo este tiempo a programar para el iPhone. No directamente, sino a través de un motor multiplataforma que también funciona en el iPhone. La experiencia no ha sido buena del todo, ni mala del todo, tiene sus más y sus menos. Aquí me voy a centrar en el desarrollo para iPhone en sí, que posiblemente os interesa a algunos de vosotros. Para empezar, sea como fuere, necesitas un mac para firmar el código.

Nosotros usamos PC para todo, pero a la hora de firmar la aplicación para que funcione en un iPhone, necesitas un mac. Y el proceso de firmado es algo tostón (aunque, ¿qué proceso de firmado digital no lo es?). Necesitas distintas firmas según lo que vayas a hacer: desarrollar, beta-testing o distribuir en la App Store. Y cada firma va asociada a un dispositivo, así que si quieres hacer beta-testing con 50 personas, más te vale armarte de paciencia e irlos añadiendo uno a uno.

Y eso suponiendo que la firma funcione. Muchas veces da problemas al pasarlo al iPhone, que se arreglan reiniciando el entorno de desarrollo (XCode) o reinstalando las firmas digitales. En fin, es el precio que hay que pagar para desarrollar para un dispositivo cool. Pero a mí me ha quitado las ganas definitivamente de tener un mac.

Y la App Store es otro tema aparte. Cuando se envía una aplicación, tardan unos días en decirte si es válida o no. Y “unos días” pueden ser 3 o 4 días, o semanas, según les pilles. Si te dicen que no vale, solo te dan una razón, en lugar de analizar bien la aplicación y descubrir más de un fallo. Pero supongo que, siendo el proceso tan artesanal, no debe ser agradable hacer análisis minuciosos de todas las aplicaciones que reciben.

Aquí tenéis algunos ejemplos de cosas que pueden invalidar tu aplicación:

  • Mostrar una imagen de un iphone: es marca registrada de Apple y no se puede usar ni en las instrucciones, para mostrar cómo se usa tu aplicación.
  • Mostrar características que no están implementadas: por eso en la AppStore no hay demos pero sí muchas versiones “Lite” (lo que hace un cambio de palabra, oiga).
  • No puede haber contenido adulto: por eso hay que ingeniárselas para incorporarlo.

En fin, cuando la fecha de lanzamiento del producto que estoy desarrollando ahora esté más cerca, ya os contaré cosas más concretas. ¡Hasta la próxima!