La teoria predominante sul perché l'attuale app Facebook per iOS sia così lenta è che l'app:
- soffre del suo uso intensivo di JavaScript in un componente UIWebView che attualmente non beneficia del motore Javascript "Nitro" disponibile per Safari Mobile
- è mal progettato
L'app utilizza pochissimo codice nativo e quindi la maggior parte delle tue interazioni avviene all'interno di una UIWebView che visualizza HTML ed esegue Javascript.
Essenzialmente, ovunque l'app mostri qualcosa che sembra e si comporta come "incorporare un browser web", è un UIWebView.
In termini molto semplici, il motore Nitro Javascript rende Javascript "più veloce".
iOS 4.3 ha portato il motore Nitro a Mobile Safari e IOS 5 ha portato il motore Nitro a collegamenti Web avviati dalla schermata principale. Questo è uno dei potenziali motivi per cui il tuo uso di Facebook all'interno di Mobile Safari sembra molto più reattivo.
A partire da iOS 5.1, UIWebView non beneficia del motore Nitro Javascript.
Questo problema è stato recentemente discusso sul blog Mobtest, " Ecco perché l'app per iOS di Facebook è così brutta (UIWebViews e nessun Nitro) " con un numero di commenti in il relativo thread Hacker News .
Nell'attuale app, Facebook ha recentemente aumentato la promozione di app iOS aggiuntive:
Queste app, che vanno da "vecchie notizie" a "nuove di zecca", sembrano fare un buon lavoro concentrandosi su un singolo compito relativo a Facebook, aggiungendo in alcuni casi il supporto per qualcosa che il generale Facebook iOS l'app non supporta nemmeno.