A teoria predominante sobre o motivo pelo qual o aplicativo atual do Facebook para iOS é tão lento é que o aplicativo:
- sofre com o uso intenso de JavaScript em um componente UIWebView que atualmente não se beneficia do mecanismo Javascript "Nitro", disponível para o Mobile Safari
- é mal projetado
O aplicativo usa muito pouco código nativo e, portanto, a maior parte da sua interação ocorre em um UIWebView exibindo HTML e executando Javascript.
Essencialmente, em qualquer lugar em que um aplicativo esteja exibindo algo que pareça e aja como se estivesse "incorporando um navegador da web", é um UIWebView.
Em termos muito simples, o mecanismo Nitro Javascript torna o Javascript "mais rápido".
O iOS 4.3 trouxe o mecanismo Nitro para o Mobile Safari e o IOS 5 trouxe o mecanismo Nitro para atalhos da Web lançados na tela inicial. Essa é uma das possíveis razões pelas quais o uso do Facebook no Mobile Safari parece muito mais responsivo.
No iOS 5.1, o UIWebView não se beneficia do mecanismo Nitro Javascript.
Esta questão foi discutida recentemente no blog Mobtest, " Veja por que o aplicativo do Facebook para iOS é tão ruim (UIWebViews e sem Nitro) " com vários comentários no tópico relacionado do Hacker News .
No aplicativo atual, o Facebook aumentou recentemente sua promoção de aplicativos iOS adicionais:
Esses aplicativos - que variam de "notícias antigas" a "novos" - parecem fazer um bom trabalho, concentrando-se em executar bem uma única tarefa relacionada ao Facebook, em alguns casos adicionando suporte a algo que o aplicativo geral do iOS para Facebook não oferece. mesmo apoio.