Eines der schrecklichsten Sicherheitsfehlern in Android ist die Speicherverlust. Sie sind böse, weil ein Stück des Codes die Anwendungen abstürzen kann oder kann Probleme verursachen. Speicherlecks können auftreten wegen Speicherung im Heap erstellen und nicht zu löschen. Es ist ein ernstes Problem für Anwendungen und es wird verursacht durch einen Zeiger, der nicht in der Schleife zurückgegeben wird.
Speicherfehler können in zwei Arten von Gedächtnis und Speicherproblemen unterteilt werden. Nicht genügend Arbeitsspeicher versucht, die, mehr Speicher zuweisen, die die Anwendung Heap hat. Die Leckage ist schwer zu finden. Sie können die Leckage in der app identifizieren, beim Empfangen von des Crash-Berichts. Darüber hinaus können Programmabstürze aufgrund diverse Probleme auftreten. Daher ist herausfinden, das Leck der schwierigste Teil bei der Entwicklung. Die Leckage tritt auf, halten ein Objekt über einen längeren Zeitraum auch nach seinen Zweck abgeschlossen ist. In der Regel sammelt der Garbage Collector alle tot oder nicht verwendete Objekte, die keine Links zu ihnen hat. Wenn die Programme die Objekte halten, wird dann der Garbage Collector nicht aufräumen können.
Viele Werkzeuge sind Lecks, Eclipse Memory Analyzer, Mat Plugin, Tool Traceview von android SDK und Valgrind zu Testzwecken zur Verfügung. Android SDK bietet zwei wichtige Möglichkeiten, um die Speichernutzung von ca. Allocation Tracker zu skizzieren und Heapdumps gibt zwei Hauptmöglichkeiten. Zuweisung Tracker ist hilfreich für Entwickler, die Speicherauslastung der app in einem bestimmten Zeitraum herauszufinden. Dennoch bietet es keine den Gesamtstatus der Anwendung Heap.
Heapdumps sind das beeindruckende Tool für Cache Analyse und sieht aus wie das Bild des app-Heap. Jeder Entwickler steht vor einer Herausforderung in der Analyse und die Verwendung von RAM in die app zu verstehen und optimieren es. Nach der Veröffentlichung der nicht verwendete Objekte aus der Anwendung, behält die Anwendung mehr Stauraum als erforderlich.
Eclipse Memory Analyzer (MAT) ist das beste Werkzeug um die Speichernutzung von Anwendungen zu analysieren. Dieses Tool ist nützlich für die Verfolgung von Leckagen in Speicher und bietet die Gelegenheit, die Anwendung in regelmäßigen Abständen zu analysieren. MAT bietet eine Momentaufnahme der die Speicherauslastung für einen bestimmten Zeitraum. Denken Sie daran, MAT gibt nicht den Grund für die Erstellung des Objekts oder es kann nicht die Objekte anzeigen, die den Garbage Collector gesammelt hat. Jedoch können Sie die Leckage sofort erfahren und Wege finden, um ihn zu stoppen.
DDMS Tool wird verwendet, um die Speicherzuweisung zu erkennen und diese werden im Android SDK-Verzeichnis. Dieses Tool wird auch die Leckage in Android-Anwendung angezeigt. Außerdem zeigt die Informationen über die Objekte, die nicht Garbage collection und die Datenspeicherung, die von den Objekten belegt. Wenn Sie einen Link im Rahmen platzieren, führt zu Leck, die viel Speicher und es als verwandte Speicherverlust Kontext aufgerufen wird. Dies kann auf zweierlei Weise vermieden werden. Erste Lösung hierfür ist zu vermeiden, Freigabe Rahmen außerhalb der app. Mit der Anwendungskontext ist eine andere Lösung, dadurch, Rahmen wird beibehalten, solange die Anwendung lebt.