After seeing this issue for some time on my Note 2 (GT-N7100), Android 4.4.2 I wanted to make my above comment a proper answer.
Sorted by allocation size:
I used webrtc to track allocation when the Android camera is used, and it can be clearly seen that every time the camera is invoked and the video is rendered onto GLSurfaceView in a new Activity, more than 2 MB of trash is left over, which is never ever gathered by GC.
To compare, here is the same allocation tracked on an ASUS Memo Pad 2, Android 4.2.2:
Sorted by allocation size:
In other words, on a Note 2 you can start a video live view about 20-30 times, before memory is full and the device crashes.
In other words: Samsung introduced this issue with an update last year and did not yet fix it, nor do they react in any way. Does Samsung want to make us buy a new device? Looks like that.
--
And here is my original comment as of 2014-12-11:
It does cause trouble. It causes the device to take much more memory
than needed and crash. We are developing an app with many images and
videos, and due to the missing GC it is possible to make Android reach
the 64MB limit (Note 2) and crash, whereas on other devices memory
consumption is much lower and memory is always released after use. For
example, an ASUS Memo Pad with the same resolution consumes about
12MB, for what the Samsung Note 2 takes 24MB. The Samsung device is
much faster, though, probably because of the GC being omitted.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…