6 votes

Existe-t-il un moyen de forcer les applications à utiliser uniquement la mémoire interne ?

J'ai un Sony Xperia U, et mes 8 Go de mémoire sont divisés en trois parties : 2 Go de mémoire du téléphone, 4 Go de mémoire interne (en remplacement de l'emplacement MicroSD) et 2 Go que je n'ai pas vraiment compris.

Je ne veux pas m'embêter avec la répartition. Je veux juste utiliser chacun d'entre eux comme ils doivent l'être.

Le problème est le suivant : de nombreuses applications sont optimisées pour sauvegarder beaucoup de choses dans la mémoire SD, mais pour ce téléphone, ce n'est pas vraiment utile, car il a beaucoup d'espace dans la mémoire du téléphone ! Que puis-je faire pour que les données des applications créées automatiquement utilisent la mémoire interne ? uniquement en laissant la mémoire SD (interne, dans le cas de l'Xperia U) libre pour mon propre usage ?

Edit : Merci pour vos réponses ! John, mon appareil est enraciné, donc, pourriez-vous expliquer davantage sur ces autorisations, s'il vous plaît ? Merci d'avance !

2voto

keen Points 171

Vous dites que votre téléphone est enraciné, il est alors possible de changer l'emplacement d'installation par défaut que le gestionnaire de paquets utilise pour installer les applications. cela ne fonctionnera qu'avec les applications qui le permettent, comme d'autres l'ont déjà souligné, les applications peuvent choisir d'ignorer la recommandation du gestionnaire de paquets et de s'installer en interne/externe de toute façon même si vous choisissez le contraire. également, les gros fichiers de jeu dans le répertoire obb sont stockés là où le répertoire obb est réellement situé ; cela dépend du téléphone que vous utilisez.

pour changer le répertoire d'installation par défaut :

1) utiliser un émulateur de terminal depuis google play (ou, alternativement, activer le débogage usb et utiliser adb)

2) dans l'émulateur de terminal, entrez :

su

accepter la demande du super-utilisateur, puis essayer l'un ou l'autre :

pm setInstallLocation X

ou :

pm set-install-location X

où X peut être soit

0 = laisser le packagamanager décider

1 = installer sur l'interne par défaut

2 = installer sur l'externe par défaut

0voto

Milner Points 533

Comme Sid encouragé, je vais convertir mon commentaire en une réponse - tout en fusionnant les détails des autres commentaires :

Il y a principalement deux façons d'adresser la SDCard à partir des applications :

  1. chemin d'accès codé en dur (par exemple /sdcard/funnyapp )
  2. en utilisant l'API d'Androïde, c'est-à-dire [getExternalStorageDirectory()](http://developer.android.com/reference/android/os/Environment.html#getExternalStorageDirectory())

Alors que 1. pourrait échouer si la SDCard est montée à un endroit différent, 2. conduirait l'application à stocker des choses dans la "première" SDCard (sur les appareils avec SDCard interne, cela signifie SDCard interne, sur les autres externes). Mais les deux cas partagent le même fait : si l'application n'offre pas d'option de configuration, il n'y a rien que vous puissiez faire pour changer cela. Android ne propose pas de paramètre correspondant, et Symlinks ne fonctionnent pas sur les cartes SDC (en raison des limitations du système de fichiers).

Il en va de même pour le stockage utilisé pour l'application elle-même, comme Sid l'a écrit en pointant vers Documents de support Android (voir également la documentation des développeurs sur Emplacement de l'installation de l'application pour cela). Si, dans la plupart des cas, il est possible de déplacer une application à l'aide de la fonction App2SD intégrée à Android, le développeur peut faire en sorte que son application ne puisse pas être déplacée.

Quant à Commentaire de John ça ne marcherait pas vraiment. Encore une petite explication sur ce qu'il voulait dire : En utilisant les "pouvoirs de la racine", vous pouvez changer la propriété de tous les fichiers et répertoires. Donc son idée était probablement de faire en sorte que tout ce qui se trouve sur votre SDCard appartienne à Root, et ne soit lisible que par les autres. Cela ne fonctionnerait pas pour plusieurs raisons :

  • Cela rendrait les choses encore plus compliquées pour vous (puisque vous ne pourriez pas écrire l'un ou l'autre sans devenir Root avant, à chaque fois).
  • Vous ne pouvez pas faire cela au niveau des répertoires (par exemple, le faire pour chaque répertoire sauf pour un répertoire avec un "nom fantaisiste" comme par exemple "MyOwnDocs", où vous pourriez stocker vos affaires sans les problèmes de l'argument précédent), car le système de fichiers sur la carte (FAT) ne le supporte pas.
  • Es pourrait En quelque sorte si vous utilisez un script pour remonter la carte en lecture-écriture à chaque fois que vous voulez y écrire, et la remettre en lecture seule une fois que vous avez terminé. Mais encore une fois, cette complication n'en vaut probablement pas la peine. De plus, certaines applications peuvent planter avec une SDCard en lecture seule, car elles (pour de bonnes raisons) ne s'attendent pas à une SDCard présente mais non inscriptible.

TL;DR

En résumé, si les applications ne peuvent pas être configurées de cette manière, il n'y a aucun moyen d'y parvenir (sauf à réécrire ces applications).

-1voto

user101262 Points 1

Essayez d'utiliser Lucky Patcher et installer l'apk de l'application comme une application système.

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