2016-11-03 4 views
0

Ich schreibe meine ganze App aus Code und ich verwende kein Storyboard. Aber meine App verwendet viel Speicher. Ich habe einige View-Controller, TableViewController, CollectionView und einige Webview in meinen Apps.Warum ist meine iPhone Swift App viel Speicherplatz zugewiesen und verwendet?

Memory Uses picture.Memory Allocation Instrument.

Und ich alle Viewcontroller am Schub- und childviewController navigationViewController von RootViewController bis es instanziieren.

Und ich denke, dass die ARC nicht funktioniert, ist in meinem Projekt aktiviert.Und wenn der Speicher maximal erreicht ist meine App kill von iPhone.

+3

Wir benötigen einige weitere Informationen im Zusammenhang mit Codierung, um Ihnen zu helfen. Probiere die Instrumente wie "Allocations" und "Time Profiler" aus und hänge dann den Screenshot an. – Wolverine

+0

Okay danke Wolverine. Nur eine Minute werde ich anhängen. –

+0

Überprüfen Sie, ob Sie irgendwelche Lecks haben, und wenn Sie damit beginnen, uns zu sagen, dass alles aus dem Code gebaut wird, haben Sie wahrscheinlich etwas mit Ansichten vermasselt –

Antwort

1

wow, das ist eine Menge Speicher!

Ich habe nicht viel Erfahrung mit Webviews, aber ich könnte in der Lage sein, mit den anderen Komponenten zu helfen.

Als Vorschlag: Verwenden Sie den Debugger, um Schritt für Schritt durch Ihren Code zu gehen, und behalten Sie den Speicher in XCode im Auge.

Looks something like this. The same tool you used.

Sie könnten in der Lage sein, um herauszufinden, welcher Teil des Codes so viel Speicherauslastung Art und Weise, die erzeugt.

Wenn Sie das Problem nicht finden können: Es ist sehr schwer zu sagen, wo dieser Effekt herkommt. Es könnte ein wenig einfacher sein, wenn Sie Ihren Code schreiben (vorzugsweise kommentiert), damit wir tiefer in das eindringen können, was dieses Problem verursachen könnte.

Cheers, Ferdinand

+0

Vielen Dank Bob. –

+0

Kein Problem! Lass es mich wissen, wenn du die Lösung hast. Wenn nicht, könnte ich vielleicht anders helfen. –

+1

Ja, ich habe ein Problem mit UIWebview nach dem Laden von Webview und der Fertigstellung seiner Arbeit es ist nicht Freigabe von Speicher Ich werde sehen, wie Speicher nach Beendigung der Arbeit mit uiwebview freigeben. Für uiwebview mein ARC funktioniert nicht –

1

überprüfen, ob es irgendwelche Speicher behalten Zyklen, wenn schwache Referenz refrencing selbst immer innerhalb Verschluss verwenden.

+0

Okay, ich habe festgestellt, dass nach der Verwendung von UIWebview Speicher nicht freigegeben wird, wie kann ich es freigeben. –

Verwandte Themen