Dlaczego aplikacja Facebook na iPhone'a tak wolno ładuje zawartość?

13

Dlaczego aplikacja Facebook na iPhone'a tak wolno ładuje treść (w szczególności komentarze do postów) i czasami wcale jej nie pobiera?

Strona działa dość dobrze i szybko, ale aplikacja działa znacznie wolniej, używając tej samej sieci bezprzewodowej.

Czy coś jest nie tak z moim telefonem, czy ktoś ma jakieś wskazówki, jak debugować coś takiego?

aneuryzm
źródło
2
Anegdotycznie nie znoszę aplikacji Facebook na iOS. Interfejs mobilny Facebooka wspaniale blokuje ograniczenia, takie jak niemożność przesyłania multimediów (ograniczenie przeglądarki iOS, a nie ograniczenie Facebooka), a aplikacja? Nie tak bardzo. Jestem zadowolony, że obwiniam Facebooka i nazywam go dniem. Zwłaszcza, że ​​twórca aplikacji Facebook na iOS bardzo publicznie krytykował Apple za liczne skargi, które wydają się być dla niego bardzo specyficzne. Może. [/ rant]
Jason Salaz
@JasonSalaz Czy to była nowa skarga? Wiem, że dawno temu deweloper (mieli do czynienia z jednym facetem) czuł się nieznacznie przez proces recenzji Apple i nie chce brać w tym udziału. Ale to już dawno zostało poprawione (w rzeczywistości wydaje się, że w dzisiejszych czasach wszystko jest zatwierdzane). Jeśli chodzi o aplikację, spójrz na ocenę. Tysiące ludzi oceniło ją jako 1 gwiazdkę za zwykłe bycie śmieci. Obecna wersja ma ogólną ocenę 2 gwiazdek (spośród 2665 ocen). I jako całość, 1545 przyznało mu 1 gwiazdkę, co daje dodatkowe 379, co daje 2. Tylko 364 użytkowników nie przyznało mu 5 gwiazdek. To powinno Cię podpowiedzieć nie w ogólnej jakości.
@cksum Nie, żadnych nowych skarg i nie wiem już, kto opracowuje aplikację na iOS na / dla Facebooka. Wiem tylko, że mam przyjaciela, który pracuje na Facebooku, czytając moje skargi i prawdopodobnie mnie w tym momencie nienawidzi :). Obala mnie albo po prostu mówi: „Wkrótce”. :(
Jason Salaz,

Odpowiedzi:

13

Dominującą teorią, dlaczego obecna aplikacja Facebook na iOS jest tak powolna, jest to, że aplikacja:

  1. cierpi z powodu częstego używania JavaScript w komponencie UIWebView, który obecnie nie korzysta z silnika JavaScript „Nitro” dostępnego dla Mobile Safari
  2. jest źle zaprojektowany

Aplikacja wykorzystuje bardzo mało natywnego kodu, dlatego większość interakcji odbywa się w UIWebView wyświetlającym HTML i uruchamiającym Javascript.

Zasadniczo wszędzie tam, gdzie aplikacja wyświetla coś, co wygląda i działa jak „osadzanie przeglądarki internetowej”, jest to UIWebView.

Mówiąc najprościej, silnik Javascript Nitro sprawia, że ​​Javascript jest „szybszy”.

iOS 4.3 wprowadził silnik Nitro do Mobile Safari, a IOS 5 wprowadził silnik Nitro do skrótów sieciowych uruchamianych z ekranu głównego. Jest to jeden z potencjalnych powodów, dla których korzystanie z Facebooka w Mobile Safari wydaje się znacznie bardziej responsywne.

Począwszy od iOS 5.1, UIWebView nie korzysta z silnika Javascript Nitro.

Ten problem był ostatnio omawiany na blogu Mobtest: „ Oto dlaczego aplikacja Facebook na iOS jest taka zła (UIWebViews i bez Nitro) ” z kilkoma komentarzami w powiązanym wątku Hacker News .

W ramach bieżącej aplikacji Facebook ostatnio zwiększył promocję dodatkowych aplikacji na iOS:

Te aplikacje - od „starych wiadomości” po „nowiutkie” - wydają się robić dobrą robotę, koncentrując się na dobrze wykonanym pojedynczym zadaniu związanym z Facebookiem, w niektórych przypadkach dodając obsługę czegoś, czego nie robi ogólna aplikacja Facebook na iOS nawet wsparcie.

Jeff
źródło
Czy możemy znaleźć rozwiązanie problemu z naprawą naszego telefonu w języku angielskim? Powinna istnieć prosta poprawka, aby aplikacja była bardziej płynna
0

Pracuję nad tym za pomocą VPN. Następnie komentarze, filmy i inne ładują się szybko. Być może problem jest spowodowany przez dostawców usług internetowych korzystających z głębokiej inspekcji pakietów (która jest omijana podczas korzystania z VPN). Problem dotyczy także Androida.

Geoff C
źródło
-1

Jeśli chcesz kliknąć łącza FB, skorzystaj z wersji internetowej (przynajmniej do momentu poprawienia projektu przez FB).

użytkownik93166
źródło
Czy mógłbyś wyjaśnić nieco więcej, co masz na myśli!
Ruskes