Android subsystem "AlienDalvik" reports isLowRamDevice() to apps

REPRODUCIBILITY (% or how often): 100%
BUILD ID = OS VERSION (Settings > About product): 4.1.0.24 (Kvarken)
HARDWARE (XA2, Xperia 10…): XA2 Ultra
UI LANGUAGE: English
REGRESSION: (compared to previous public release: Yes, No, ?): ?

DESCRIPTION:

Android subsystem reports device as “low RAM”, ie. there isn’t much memory available:

This will affect some Android software adversely, since they disable memory-intensive features.

PRECONDITIONS:

Unknown.

STEPS TO REPRODUCE:

  1. Install Android application which uses isLowRamDevice() to determine its behavior, eg. Signal
  2. Run the application

EXPECTED RESULT:

Application works normally in the Android subsystem.

ACTUAL RESULT:

Application is told it is running in a “low RAM” system, and disables parts of the UI in an effort to conserve memory. For example, Signal will only send images in very low 768×432 resolution and not even display a image quality selector tool.

ADDITIONAL INFORMATION:

Could this be related to the issue with memory level reported by Mode Control Entity?

6 Likes

I have the same Bug. The Same Hard- and Software version as ExTechOp.
My IU Language is German

The Android system image is intentionally built with an Android Go configuration to reduce its memory footprint, as its usual flagrant RAM consumption isn’t appropriate for a guest OS. Perhaps we could see if we could limit that to system components so that apps wouldn’t do this sort of thing.

4 Likes

Verified still to be the situation with SFOS 4.2.0.19 Verla.

1 Like

Is this.issue connected with the disabled option for android apps to show over other apps?
This was disabled since android 10 was updated before it was ok.

That would be great, because numerous Android apps limit themselves functionally (in various ways), when isLowRamDevice() is indicated to them.
Which is exactly what is intended (according to the documentation): This is mostly intended to be used by apps to determine whether they should turn off certain features that require more RAM.

Thus, while configuring the Android Runtime Environment “AlienDalvik” to limit its RAM usage is fine, exposing isLowRamDevice() to apps is not, IMO.

1 Like