内存不足错误:Java 堆内存(GC 堆)



突然我的应用程序崩溃并弹出此错误...对这个错误有任何想法吗?这么努力还是解决不了...

Clamp target GC heap from 111MB to 96MB Alloc concurrent mark sweep GC freed 3(96B) AllocSpace objects, 0(0B) LOS objects, 0% free, 95MB/96MB, paused 2.380ms total 71.136ms

抛出内存错误"无法分配具有 12888 个可用字节和 12KB 的 14710 字节分配,直到 OOM

AndroidRuntime: Error reporting crash
java.lang.OutOfMemoryError: Failed to allocate a 14710 byte allocation with 12888 free bytes and 12KB until OOM
at java.lang.AbstractStringBuilder.enlargeBuffer(AbstractStringBuilder.java:95)
at java.lang.AbstractStringBuilder.append0(AbstractStringBuilder.java:125)
at java.lang.StringBuffer.append(StringBuffer.java:278)
at java.io.StringWriter.write(StringWriter.java:123)
at com.android.internal.util.FastPrintWriter.flushLocked(FastPrintWriter.java:358)
at com.android.internal.util.FastPrintWriter.appendLocked(FastPrintWriter.java:303)
at com.android.internal.util.FastPrintWriter.write(FastPrintWriter.java:625)
at com.android.internal.util.FastPrintWriter.append(FastPrintWriter.java:658)
at java.io.PrintWriter.append(PrintWriter.java:691)
at java.io.PrintWriter.append(PrintWriter.java:31)
at java.lang.Throwable.printStackTrace(Throwable.java:324)
at java.lang.Throwable.printStackTrace(Throwable.java:300)
at android.util.Log.getStackTraceString(Log.java:509)
at com.android.internal.os.RuntimeInit.Clog_e(RuntimeInit.java:59)
at com.android.internal.os.RuntimeInit.access$200(RuntimeInit.java:43)
at com.android.internal.os.RuntimeInit$UncaughtHandler.uncaughtException(RuntimeInit.java:91)
at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693)
at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690)

我已经尝试过这样,这样和这样的东西,但它不起作用。

谁能帮我解决?我真的很感激。

谢谢!

Manifext.xml中添加此行android:largeHeap="true"它将分配一个大的堆内存。

<application
android:name=".MyApplication"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:largeHeap="true"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/MyAppTheme">
...
</application>

我希望这对你有用。

尝试使用调试器和 Android 性能分析器来检测资源的确切使用位置以提高性能。

最新更新