Pracuję nad aplikacją w symulatorze iPhone'a od kilku tygodni i działa ona dobrze do tej pory, ale nagle zaczęła działać bardzo wolno, zarówno podczas ładowania treści, jak i animacji. Nie wprowadziłem żadnych zmian w kodzie od czasu ostatniego pomyślnego przetestowania.
Próbowałem ponownie uruchomić symulator (wiele razy), usunąć aplikację i przeprowadzić całkowicie czystą przebudowę, ale bez powodzenia. Sprawdziłem również użycie procesora przez monitor, gdy symulator jest uruchomiony i używam tylko około 30% mojego procesora i 40% pamięci.
W pełni rozumiem, że symulator nigdy nie jest tak szybki jak samo urządzenie, ale wydaje się dziwne, że nagle zaczął działać wolno po tak długim czasie, a przez powolność mam na myśli mniej niż jedną czwartą jego oryginalnej prędkości.
źródło
Odpowiedzi:
W symulatorze iOS na pasku u góry kliknij
Debug
→Toggle Slow Animations
(lubSlow Animations
Xcode 10+). Możliwe, że przypadkowo go włączyłeś.źródło
Simple Command+ Tnaprawi ten problem.
Command+ Tprzełącza symulatory
Slow Animations
, które można znaleźć w menu symulatora:Debug
->Slow Animations
.źródło
Przejdź do menu debugowania symulatora i wybierz „Przełącz powolne animacje”.
Aktualizacja: w Xcode 10 to tylko „Powolne animacje”:
źródło
Wybierz symulator,
Wybierz Debuguj i odznacz powolną animację.
skrót klawiaturowy + t
To dla mnie praca.
źródło
Jeśli opcja Cmd-T (wolne animacje) nie działa dla Ciebie i
Debug -> Slow Animations
jest wyłączona, ale nadal masz wolne animacje, spróbujSimulator -> Reset Contents and Settings
(lub ewentualnieHardware -> Erase All Content and Settings
). To działało dla mnie, gdy żadna inna odpowiedź tutaj nie zadziałała. Czy ktoś ma sugestię, dlaczego?Również dołączenie debugera (w ogóle) może spowodować, że animacje będą bardzo wolne.
źródło
Hardware -> Erase All Content and Settings...
opcja.Hardware -> Erase All Content and Settings...
jest biletem.Kolejna potencjalna poprawka dla użytkowników React-Native:
Chrome nie nadaje priorytetu Javascript działającemu na kartach, które nie są na pierwszym planie. Jeśli więc włączyłeś zdalne debugowanie, pamiętaj o umieszczeniu debugera we własnym oknie.
źródło
Podczas korzystania z symulatora przypadkowo nacisnąłeś wolną animację podczas debugowania. Uruchom więc Symulator -> Debuguj -> Odznacz Powolną animację.
źródło
Myślę, że przez pomyłkę nacisnąłeś Command + T zamiast Command + R.
źródło
Nie mam jeszcze przedstawiciela, który mógłby zostawić komentarz, ale głosowałem tu kilka odpowiedzi i chciałem powiedzieć więcej. Miałem problem z powolnymi animacjami w symulatorze iOS, szczególnie podczas obracania, i znalazłem ten post za pośrednictwem Google. Rzeczywiście, jakoś musiało być włączone „Powolne animacje”, ponieważ naprawiły go trzy zmiany. Na początku nie sądziłem, że to problem, ponieważ obok opcji „Przełącz wolne animacje” nie ma zaznaczenia. Okazuje się, że nigdy nie ma znacznika wyboru ani żadnego wskazania z menu, czy jest włączone, czy wyłączone. Więc po prostu spróbuj go przełączyć i sprawdź, czy obrót / nawigacja jest szybsza / wolniejsza.
Więc dziękuję!
źródło
Symulator -> Zresetuj zawartość i ustawienia działa dla mnie. Wydaje się, że problem pojawia się ponownie, gdy zdalnie debuguję mój kod macierzysty reagowania. Może to być również związane z AsyncStorage, jak sugerował nomad .
źródło
Możesz spróbować wyłączyć zdalne debugowanie (Cmd-D -> Zatrzymaj zdalne debugowanie JS). To zwykle przyspiesza.
źródło
Gdy debugowanie chrome jest aktywne, a karta przeglądarki nie jest na pierwszym planie, emulator również działa wolno. Dla mnie postanowiłem umieścić przewodnik na pierwszym planie.
źródło
Nie chodzi tylko o powolne animacje. Symulator Xcode ma bardzo niską wydajność w skali globalnej. To błąd Apple. Zgłosiłem to za pośrednictwem Asystenta opinii . Stworzyłem demo z kodem pokazującym, że symulator jest 200 razy wolniejszy niż jakiekolwiek stare prawdziwe urządzenie. Odkryłem, że kod JavaScript z obiektem Date wykonanym w WKWebView jest uciążliwy dla symulatora. Zmiana opcji w symulatorze nie pomaga w moim przypadku. Zobacz jsfiddle https://jsfiddle.net/kjms16cw/ Mam nadzieję, że Apple naprawi to wkrótce!
źródło