1 votes

Comment ne pas installer une application de 338KB alors que j'ai 474MB de libre ?

J'ai un téléphone Motorola, avec 8 Go de mémoire interne.

A ma grande surprise, en quelques jours, j'avais 474MB d'espace libre, mais je ne pouvais pas installer une application de 338KB ! Il est donc clair que la limite de ~25MB mentionnée dans certains commentaires ( aquí y aquí ) ne sont pas toujours le cas. Un utilisateur vient de me dire ce qui suit :

En fait, il s'agit de "25 Mo ou 10 % de la capacité de stockage", selon ce qui est atteint en premier. En d'autres termes, il s'agit de "25 Mo ou 10 % de la mémoire". avec, par exemple, un stockage interne de 10 Go, vous serez touché dès que vous passerez en dessous de 1 Go de libre. C'est fou, mais c'est comme ça.

En fait, ce n'est pas exact, car je n'ai pas eu à libérer 1 Go de mémoire interne. Quoi qu'il en soit, un demi gigaoctet est suffisant pour faire fonctionner un système pleinement opérationnel. J'ai vu des plaintes similaires concernant des centaines de Mo insuffisants pour installer des applications de ~ 1 Mo ou d'autres petites opérations similaires ( aquí y aquí ).

Qu'est-ce qui ne va pas ?

5voto

Milner Points 533

Note : l'utilisateur cité était moi. Et Voici la référence . Pour expliquer pourquoi ce n'était pas 10% dans votre cas, voici une exception derrière le lien : "Tant que le fabricant de l'appareil ne modifie pas les paramètres par défaut". Ces 10 % sont donc les paramètres par défaut, mais peuvent évidemment être modifiés par le "fabricant de ROM". Je ne saurais dire à quelle fréquence cela se produit ; ce billet datant de 2011, il se peut même que la règle ait changé entre-temps (mais je n'en ai pas entendu parler non plus).

J'ai donc appliqué un peu de "Google-Fu" : Android 4.1.1 a toujours le commentaire

Si l'espace de stockage disponible sur l'appareil est inférieur à un seuil réglable (paramètre des paramètres sécurisés ; valeur par défaut de 10 %), une notification de mémoire insuffisante s'affiche pour alerter l'utilisateur".

(souligné par moi). Notez le terme "tunable threshold", qui indique clairement que ce seuil peut être modifié/ajusté. Pour Android 4.1.1, vous le trouverez à la ligne 67 :

private static final int DEFAULT_THRESHOLD_PERCENTAGE = 10;

Il s'agit d'une variable de classe ; mais n'étant pas moi-même un développeur Android, je ne peux pas dire comment elle peut être écrasée. Cela nécessitera certainement des permissions système (ou simplement une application avec l'option WRITE_SECURE_SETTINGS autorisation ? ). En citant le dernier code :

 * This class implements a service to monitor the amount of disk
 * storage space on the device.  If the free storage on device is less
 * than a tunable threshold value (a secure settings parameter;
 * default 10%) a low memory notification is displayed to alert the
 * user. If the user clicks on the low memory notification the
 * Application Manager application gets launched to let the user free
 * storage space.

Comme vous pouvez le constater, la règle des 10 % est toujours d'application. Mais les DEFAULT_THRESHOLD_PERCENTAGE a disparu (et a été remplacée par mMemLowThreshold qui semble désormais appartenir à une classe différente - voir ligne 361 ).


TL;DR : Le même seuil de 10 % s'applique toujours, mais le "boulanger de la ROM" (qui crée la ROM) peut l'ajuster. Un développeur plus perspicace pourrait être en mesure de dire si ce seuil peut être ajusté par d'autres moyens, par exemple une application spéciale avec la fonction "ROM". WRITE_SECURE_SETTINGS autorisation ou même simplement via ADB.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X