Development issue/problem:

My Galaxy Note 2 has recently been updated to version 4.4.2. I use this phone for development (with ADT) and life was good, but after this update the GC error pause appeared and I can’t fix it. It appears when the status of the user interface screen changes in my ADT LogCat tool. Below is a list of errors.

Thank you in advance for your help.

05-13 22:39:22.538 : W/dalvikvm(8350) : Implementation for Ldalvik/system/VMRuntime native not found;.pauseGc:(Ljava/lang/String;)I
05-13 22:39:22.543 : E/MyThread(8350) : Rupture GC
05-13 22:39:22.543 : E/MonThread(8350): java.lang.reflect.InvocationTargetException
05-13 22:39:22.543 : E/MonThread(8350): on java.lang.reflect.Method.invokeNative(Native Method)
05-13 22:39:22.543 : E/MyThread(8350): On java.lang.reflect.method.input(method.java:515)
05-13 22:39:22.543 : E/MyThread(8350): at android.app.MyThread.pauseGC(MyThread.java:5525)
05-13 22:39:22.543 : E/MyThread(8350): at android.app.MyThread.performLaunchActivity(MyThread.java:2324)
05-13 22:39:22.543 : E/MyThread(8350): at android.app.myThread.handleLaunchActivity(MyThread.java:2471)
05-13 22:39:22.543 : E/MyThread(8350): at android.app.MyThread.access$900(MyThread.java:175)
05-13 22:39:22.543 : E/MyThread(8350): at android.app.MyThread$H.handleMessage(MyThread.java:1308)
05-13 22:39:22.543 : E/MyThread(8350): at android.os.Handler.dispatchMessage(Handler.java:102)
05-13 22:39:22.543 : E/MyThread(8350): on android.os.Looper.loop(Looper.java:146)
05-13 22:39:22.543 : E/MyThread(8350): on android.app.MyThread.main(MyThread.java:5602)
05-13 22:39:22.543 : E/MonThread(8350): on java.lang.reflect.Method.invokeNative(Native Method)
05-13 22:39:22.543 : E/MyThread(8350): On java.lang.reflect.method.input(method.java:515)
05-13 22:39:22.543 : E/MyThread(8350): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283)
05-13 22:39:22.543 : E/MyThread(8350): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099)
05-13 22:39:22.543 : E/MyThread (8350): at dalvik.system.NativeStart.main (Native Method)
05-13 22:39:22.543 : E/MyThread(8350) : Cause: java.lang.UnsatisfiedLinkError : Native method not found: dalvik.system.VMRuntime.pauseGc:(Ljava/lang/String;)I
05-13 22:39:22.543 : E/MyThread(8350): at dalvik.system.VMRuntime.pauseGc(Native Method)
05-13 22:39:22.543 : E/MyThread(8350): … 15 others

UPDATE:
I started the problem at code.android.com (http://code.google.com/p/android/issues/detail?id=71073). According to them it’s a Samsung bug, so now I put it on the Samsung forum.

How can I solve this problem?

Solution 1:

After seeing this question in note 2 (GT-N7100), Android 4.4.2, for a while, I wanted to make my comment above the correct answer.

Sorted by allocation size :

Sorted by assembly size

I used webrtc to keep track of the distribution when I use the Android camera, and you can see that every time the camera is called and the video is shown on GLSurfaceView in a new activity, more than 2 MB of garbage remains that never collects GC.

For comparison, here is the same distribution followed on the ASUS 2 notebook under Android 4.2.2 :

Trace distribution on the Asus 2 notebook

Sorted by allocation size :

Sorted by assembly size

In other words: In note 2, you can watch the live video about 20-30 times before the memory fills up and the device fails.

In other words: Samsung introduced this problem last year with an update and has not yet corrected it or responded to it in any way. Is Samsung trying to force us to buy a new device? That’s what it looks like.

And here is my original comment of 11/12/2014 :

That’s what gets you into trouble. The device will then use much more
memory than necessary and cause the device to crash. We are developing an application with lots of
images and videos, and due to the lack of GC Android can be forced to reach the
limit of 64 MB (Note 2) and crash, while on other devices the
memory usage is much lower and memory is always released after use. For example, the
notebook, ASUS with the same resolution consumes about
12MB, for the Samsung Note 2 it is 24MB. Samsung’s device is much faster on the
, but that is probably because it does not have the GC.

Solution 2:

I have the same problem as you. I used AIDA, he swallowed the crash and only showed it in the logbook.

The error actually returned to the server, and I was able to debug it properly. You may be able to disable the ACRA during debugging and see the correct error.

Good luck!

package installer android not working,package installer 5.1 apk,is package installer safe,package installer apk,disable package installer android,package installer miui,android force garbage collection,android gc,garbage collection android vs ios,android studio memory monitor,what is jit in android,android jit cache,shenandoah vs zgc,unrecognized vm option 'useshenandoahgc',openjdk 11 gc options,shenandoah gc minecraft,openjdk shenandoah,-xx:+useshenandoahgc not supported,java 8 jvm options,maxtenuringthreshold g1gc,allowusersignalhandlers,targetsurvivorratio,java 8 gc tuning,parallelrefprocenabled