Device implementations:
Television device implementations:
Automotive device implementations:
Watch device implementations:
Handheld device implementations:
ActivityManager.isLowRamDevice()
when there is less than 1GB of memory available to the kernel and userspace.If Handheld device implementations are 32-bit:
[H-1-1] The memory available to the kernel and userspace MUST be at least: 512MB if any of the following densities are used:
280dpi or lower on small/normal screens
ldpi or lower on extra large screens
mdpi or lower on large screens
[H-2-1] The memory available to the kernel and userspace MUST be at least: 608MB if any of the following densities are used:
xhdpi or higher on small/normal screens
hdpi or higher on large screens
mdpi or higher on extra large screens
[H-3-1] The memory available to the kernel and userspace MUST be at least: 896MB if any of the following densities are used:
400dpi or higher on small/normal screens
xhdpi or higher on large screens
tvdpi or higher on extra large screens
[H-4-1] The memory available to the kernel and userspace MUST be at least: 1344MB if any of the following densities are used:
560dpi or higher on small/normal screens
400dpi or higher on large screens
xhdpi or higher on extra large screens
If Handheld device implementations are 64-bit:
[H-5-1] The memory available to the kernel and userspace MUST be at least: 816MB if any of the following densities are used:
280dpi or lower on small/normal screens
ldpi or lower on extra large screens
mdpi or lower on large screens
[H-6-1] The memory available to the kernel and userspace MUST be at least: 944MB if any of the following densities are used:
xhdpi or higher on small/normal screens
hdpi or higher on large screens
mdpi or higher on extra large screens
[H-7-1] The memory available to the kernel and userspace MUST be at least: 1280MB if any of the following densities are used:
400dpi or higher on small/normal screens
xhdpi or higher on large screens
tvdpi or higher on extra large screens
[H-8-1] The memory available to the kernel and userspace MUST be at least: 1824MB if any of the following densities are used:
560dpi or higher on small/normal screens
400dpi or higher on large screens
xhdpi or higher on extra large screens
Note that the “memory available to the kernel and userspace” above refers to the memory space provided in addition to any memory already dedicated to hardware components such as radio, video, and so on that are not under the kernel’s control on device implementations.
Device implementations:
sdcard
or include a Linux symbolic link from sdcard
to the actual mount point.android.permission.WRITE_EXTERNAL_STORAGE
permission on this shared storage as documented in the SDK. Shared storage MUST otherwise be writable by any application that obtains that permission.Android handheld device implementations:
Device implementations MAY meet the above requirements using either:
If device implementations use removable storage to satisfy the above requirements, they:
If device implementations use a protion of the non-removable storage to satisfy the above requirements, they:
If device implementations include multiple shared storage paths (such as both an SD card slot and shared internal storage), they:
WRITE_EXTERNAL_STORAGE
permission to write to the secondary external storage, except when writing to their package-specific directories or within the URI
returned by firing the ACTION_OPEN_DOCUMENT_TREE
intent.If device implementations have a USB port with USB peripheral mode support, they:
android.provider.MediaStore
.If device implementations have a USB port with USB peripheral mode and support Media Transfer Protocol, they:
If the device is expected to be mobile in nature unlike Television, device implementations are:
If the removable storage device port is in a long-term stable location, such as within the battery compartment or other protective cover, device implementations are: