MemoryInfo class

Informations mémoire de l'appareil : RAM physique et stockage interne.

À propos de la RAM "commerciale"

Sur Android, la RAM réellement adressable par le système (ActivityManager.MemoryInfo.totalMem) est presque toujours inférieure à la RAM annoncée par le fabricant sur la fiche produit : une partie de la RAM physique est réservée au firmware, à la puce radio, au framebuffer, etc. Par exemple, un téléphone vendu "8 Go de RAM" peut remonter ~7.1 Go via totalMem.

Depuis Android 14 (API 34), le système expose une valeur "arrondie" à la taille commerciale la plus proche (advertisedMem). Ce plugin utilise cette valeur quand elle est disponible, et bascule sur la valeur réelle (totalMem) sur les versions plus anciennes d'Android.

  • totalPhysicalMemory : valeur à afficher à l'utilisateur (ex: "8 Go"). Arrondie sur Android 14+, réelle (non arrondie) avant.
  • realPhysicalMemory : valeur système réelle, toujours non arrondie. Utile pour du debug ou pour comparer les deux valeurs.
  • isAdvertisedMemory : true si totalPhysicalMemory provient de l'arrondi commercial (Android 14+), false si c'est la valeur réelle (fallback Android < 14).

Constructors

MemoryInfo({required int totalPhysicalMemory, required int availablePhysicalMemory, required int realPhysicalMemory, required bool isAdvertisedMemory, required int totalStorageSpace, required int availableStorageSpace, required int usedStorageSpace, required double memoryUsagePercentage})
const
MemoryInfo.fromMap(Map map)
factory

Properties

availablePhysicalMemory int
RAM physique actuellement disponible (libre), en octets. Toujours la valeur système réelle, quelle que soit la version d'Android.
final
availableStorageSpace int
Espace de stockage interne disponible, en octets.
final
availableStorageSpaceGB double
Stockage disponible en gigaoctets (Go), arrondi à 1 décimale.
no setter
hashCode int
The hash code for this object.
no setterinherited
isAdvertisedMemory bool
true si totalPhysicalMemory provient de l'arrondi commercial (advertisedMem, disponible depuis Android 14 / API 34). false si c'est la valeur réelle système (fallback Android < 14).
final
memoryUsagePercentage double
Pourcentage de RAM utilisée (0-100), calculé sur la base de la RAM réelle système (et non sur la valeur commerciale arrondie).
final
realPhysicalMemory int
RAM physique réelle remontée par le système, en octets, avant l'arrondi commercial. Identique à totalPhysicalMemory sur Android < 14.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
totalPhysicalMemory int
RAM totale "à afficher" (en octets).
final
totalPhysicalMemoryGB double
RAM totale en gigaoctets (Go), arrondie à 1 décimale. Pratique pour l'affichage : memoryInfo.totalPhysicalMemoryGB8.0.
no setter
totalStorageSpace int
Espace de stockage interne total, en octets.
final
totalStorageSpaceGB double
Stockage total en gigaoctets (Go), arrondi à 1 décimale.
no setter
usedStorageSpace int
Espace de stockage interne utilisé, en octets.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toMap() Map<String, Object?>
toString() String
A string representation of this object.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited