2015-03-30 12 views
12


Do wczoraj moja aplikacja działała poprawnie, ale to, co zrobiłem, z pewnych powodów musiałem otworzyć tę samą aplikację z inną pracą przestrzeń w Androidzie Studio. Od tego czasu, gdy próbuję uruchomić aplikację, otrzymuję następujący wyjątek, więc usunąłem nowo utworzone tempo prac, ale nadal utknąłem z następującym fat wyjątkiem. Pomóż mi, odkąd jestem nowy na AndroidzieOtrzymuję komunikat "OutOfMemoryError wyrzucony podczas próby wyrzucenia OutOfMemoryError; brak stosu" w Androidzie

Throwing OutOfMemoryError "Failed to allocate a 170 byte allocation with 74 free bytes and 74B until OOM" (recursive case) 
"main" prio=5 tid=1 Runnable 
| group="main" sCount=0 dsCount=0 obj=0x74430970 self=0xb4606800 
| sysTid=1905 nice=0 cgrp=apps sched=0/0 handle=0xb777c160 
| state=R schedstat=(0 0 0) utm=83 stm=36 core=0 HZ=100 
| stack=0xbf15b000-0xbf15d000 stackSize=8MB 
| held mutexes= "mutator lock"(shared held) 
at java.lang.String.<init>(String.java:233) 
at java.lang.String.<init>(String.java:191) 
at java.io.ByteArrayOutputStream.toString(ByteArrayOutputStream.java:175) 
at java.util.jar.ManifestReader.readValue(ManifestReader.java:181) 
at java.util.jar.ManifestReader.readHeader(ManifestReader.java:107) 
at java.util.jar.ManifestReader.readEntries(ManifestReader.java:59) 
at java.util.jar.JarVerifier.verifyCertificate(JarVerifier.java:311) 
at java.util.jar.JarVerifier.readCertificates(JarVerifier.java:268) 
at java.util.jar.JarFile.getInputStream(JarFile.java:380) 
at libcore.net.url.JarURLConnectionImpl.getInputStream(JarURLConnectionImpl.java:222) 
at java.net.URL.openStream(URL.java:470) 
at java.lang.ClassLoader.getResourceAsStream(ClassLoader.java:444) 
at java.lang.Class.getResourceAsStream(Class.java:1334) 
at com.google.m.a.a.a.a(unavailable:-1) 
at com.google.m.a.a.a.a(unavailable:-1) 
at com.google.maps.api.android.lib6.b.e.<init>(unavailable:-1) 
at com.google.maps.api.android.lib6.b.e.<init>(unavailable:-1) 
at com.google.maps.api.android.lib6.b.e.a(unavailable:-1) 
at com.google.maps.api.android.lib6.c.dz.a(unavailable:-1) 

[ 03-30 11:13:03.162 1905: 1914 I/art  ] 
Clamp target GC heap from 64MB to 64MB 

--------- beginning of crash 
03-30 11:13:03.179 1905-1905/com.example.myothermap E/AndroidRuntime﹕ FATAL EXCEPTION: main 
Process: com.example.myothermap, PID: 1905 
java.lang.OutOfMemoryError: OutOfMemoryError thrown while trying to throw OutOfMemoryError; no stack available 

Jak mogę odzyskać od tego?

+0

Sprawdź ten link http://stackoverflow.com/questions/21012006/android-outofmemoryerror – Keshav1234

+0

@ Kesh1234 link podasz jest dobra, ale nie specyficzne dla mojego problemu –

+0

Czy próbowałeś tych rozwiązań? czy próbowałeś usunąć swoje stare AVD i stworzyć nowe i spróbować? – Keshav1234

Odpowiedz

-2

Dodaj tę linię w pliku manifestu projektu wewnątrz znacznika aplikacji.

android:largeHeap="true" 

jak ten

<application 
    android:largeHeap="true" 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@android:style/Theme.NoTitleBar" > 
+1

Korzystanie z funkcji LargeHeap nie jest zalecane we wszystkich przypadkach, należy jej używać bardzo ostrożnie, może spowalniać działanie innej działającej aplikacji, a także wpływać na reaktywność aplikacji, ponieważ odśmiecacz może być częściej zgłaszany. Aby uzyskać więcej informacji, sprawdź tę wypowiedź z google i/o https://www.youtube.com/watch?v=_CruQY55HOk – Mood

+4

@Mood zwrócił uwagę na poprawność. Ta odpowiedź zada więcej szkód niż rozwiązanie. – divyenduz

Powiązane problemy