¿Cómo implementó WhatsApp la web de WhatsApp para iOS?

Esto es sólo una suposición, pero creo que su razón inicial fue la limitación de iOS para ejecutar tareas en segundo plano. Apple tiene una política estricta sobre cómo se comporta una app cuando está en segundo plano, y también por buenas razones.

Una app normal de iOS tiene un tiempo limitado para ejecutar código cuando pasa a segundo plano (alrededor de 10 - 20 segundos, CMIIW), normalmente para guardar el estado actual de la aplicación o enviar datos de análisis. Esta limitación impide que se implemente WhatsApp Web, ya que necesitan que la app de WhatsApp para iOS envíe nuevos mensajes a la app web, incluso cuando la app está en segundo plano.

Apple solo permite que una app siga ejecutándose en segundo plano si tiene una razón realmente buena para ello. En el caso de WhatsApp, en mi opinión, es su función de VoIP. Apple permite que las aplicaciones de VoIP sigan ejecutándose en segundo plano, ya que necesitan poder recibir llamadas incluso cuando están en segundo plano, ¿no? No he tenido conexión con ningún ingeniero de WhatsApp... por ahora 😉 Por favor, corregidme si me equivoco 🙂

Más información: Documentación de Apple sobre la ejecución en segundo plano