webentwicklung-frage-antwort-db.com.de

Langsame App-Leistung unter iOS 8-Simulator mit Xcode 6

Nach dem Upgrade auf xcode 6 stellte ich fest, dass die Ausführung meiner App unter iOS 8 im iOS-Simulator sehr langsam lief, unabhängig davon, ob ich iPhone oder iPad wähle. Wenn ich es für iOS 7 auswähle, lief es normal. Ich dachte, dass es sich um ein App/Coding-Problem handelte, also versuchte ich, es mit iOS8 auf meinem iPad bereitzustellen, und seltsamerweise läuft die App normal, nicht so langsam wie der Simulator SO dieses Problem erleben?

15
webchun

Es wird nicht erwartet, dass die Leistung im iOS-Simulator die Leistung auf dem Gerät erreicht. Der iOS-Simulator ist ein Werkzeug für schnelles Prototyping und schnelle Wiederholung. Die Leistungsoptimierung muss auf realen Geräten durchgeführt werden.

Im iOS-Simulator ausgeführte Prozesse sind im Wesentlichen OS X-Prozesse, die in einer speziell gestalteten Laufzeit innerhalb eines speziellen Bootstraps ausgeführt werden, um sich wie iOS und nicht als OS X zu verhalten. In den letzten 4 Jahren hat sich dies im Wesentlichen aus UIKit und ähnlichen iOS-Frameworks entwickelt, die auf der Grundlage von iOS 10 erstellt wurden OS X Frameworks verfügen jetzt über einen eigenen Bootstrap-Server (ab iOS 7), unser eigenes dyld (ab iOS 8) und teilen nur den Host-Kernel und Systembibliotheken mit sehr niedrigem Level (libSystem ab iOS 7 und nur die pthreads) , Syscalls und Plattformkinder von libSystem ab iOS 8).

Wenn Sie eine App auf einem Gerät testen, das gerade nicht gebootet ist, fahren wir das Gerät herunter und booten das neue Gerät. Dieser Vorgang kann je nach E/A-Bandbreite Ihrer Festplatte und anderen Aufgaben 10 Sekunden bis eine Minute dauern auf dein System sind es zu fordern.

Wenn Sie bei einem Sim-Gerät, das vor einiger Zeit gebootet wurde, schwerwiegende Leistungsprobleme feststellen und keine offensichtlichen Hintergrundaufgaben ausführen (Kompilierung, Rsync oder was auch immer), sollten Sie eine Sysdiagnose durchführen und sich die Simulatorprozesse im Spin-Dump ansehen und fs_usage, um zu sehen, was wahrscheinlich passiert.

Stellen Sie sicher, dass auf der Registerkarte "Debug" im iOS-Simulator nicht "langsame Animationen" ausgewählt ist. Das hat das Problem für mich behoben. Möglicherweise wurde es versehentlich eingeschaltet.

29
PolitikP

Wenn Sie selectedT drücken, während der Simulator ausgewählt ist, werden langsame Animationen aktiviert, wodurch alles in Zeitlupe geht. ⌘T wird häufig verwendet, um eine neue Browser-Registerkarte zu öffnen. Stellen Sie also sicher, dass Ihr Browser ausgewählt ist und nicht Ihr Simulator.

10
Eric

Leistungssimulation und Gerät verschiedene Dinge. Ich denke, du solltest nicht darauf achten. Dieser Fehler kann Apple optimieren

0
Pawel Molodkin