Aplicaciones de iOS: ¿Cómo sabe Bump qué aplicaciones he comprado?

Apple proporciona un método para que las aplicaciones de iOS se comuniquen con otras aplicaciones instaladas en el mismo dispositivo a través de esquemas de URL personalizados . Esto está documentado en la Guía de programación de aplicaciones iOS *:

Las aplicaciones que admiten esquemas de URL personalizados pueden usar esos esquemas para recibir mensajes. Algunas aplicaciones usan esquemas de URL para iniciar solicitudes específicas. Por ejemplo, una aplicación que quiere mostrar una dirección en la aplicación Mapas puede usar una URL para iniciar esa aplicación y mostrar la dirección. Puede implementar sus propios esquemas de URL para facilitar tipos similares de comunicaciones en sus aplicaciones.

Google adquiere Bump (septiembre de 2013) y otros desarrolladores como Tapbots pueden aprovechar esquemas de URL personalizados para verificar si hay aplicaciones específicas instaladas en su dispositivo, utilizando métodos como canOpenURL , que devuelve si una aplicación puede abrir un recurso de URL determinado ** . Bump usa este principio para aplicaciones de terceros, mientras que Tapbots lo usa para promocionar sus otras aplicaciones.

Si tiene una amplia selección de aplicaciones en su dispositivo, es posible que haya notado que Bump no las muestra todas. Esto se debe a que las aplicaciones solo pueden consultar esquemas de URL específicos, no todas las aplicaciones instaladas.

Donde falla este método es cuando las aplicaciones registran el mismo esquema de URL. Esto se ilustra en la captura de pantalla a continuación, donde la aplicación Bump (izquierda) ha identificado que instalé la aplicación TweetBot de KiokuHacker ***, cuando en realidad instalé la aplicación Tweetbot de Tapbots ****. El mismo problema probablemente ocurriría si solo tuviera instalada la aplicación anterior y abriera una de las otras aplicaciones de Tapbots, como Convertbot.


* http://developer.apple.com/libra…
** http://developer.apple.com/libra…
*** http://itunes.apple.com/app/twee…
**** http://itunes.apple.com/app/twee…