0 votes

Où les applications téléchargées sont-elles enregistrées lorsqu'elles sont installées sur la carte SD ?

Hier, j'avais ~40 Mo d'espace libre sur mon Samsung GT-S5570 Android 2.2.1. Je voulais installer l'application Facebook, donc je l'ai téléchargée depuis le Play Store et elle s'est installée automatiquement. Sa taille était d'environ 20 Mo.

Cette application est installée sur la carte SD. Cependant, après tout le processus, j'ai reçu un message d'avertissement concernant la mémoire interne faible. J'ai vérifié l'espace libre et, étonnamment, maintenant il est d'environ 20 Mo... Je suppose que les 20 Mo correspondent à l'application téléchargée (un peu comme le .exe dans Windows).

J'ai cherché dans les dossiers .temp et téléchargements pour voir si le ".exe" s'y trouvait mais je ne l'ai pas trouvé. J'ai vérifié les paramètres du navigateur (le navigateur Android par défaut) pour voir où les téléchargements sont enregistrés, mais je n'ai trouvé aucune référence aux téléchargements.

Où sont enregistrés les fichiers ".exe" téléchargés ?

1 votes

Thanos, je viens d'ajouter la balise insufficient-memory à ta question. Merci de consulter le tag-wiki pour plus de détails, y compris la suggestion de babelmonk (qui est déjà couverte dans le tag-wiki de app2sd).

2voto

Slodin Points 1

Les applications Android ne sont pas des fichiers .exe - ce sont des fichiers .apk, qui sont essentiellement des fichiers .jar Java avec des informations supplémentaires incluses.

Les packages sont installés dans l'un des quelques emplacements :

  1. /system/app - pour les applications installées par le système - vous ne pouvez pas modifier ce dossier.
  2. /data/app - toutes les applications installées depuis le market sont installées ici, et vous en tant qu'utilisateur pouvez modifier le dossier.
  3. /sdcard/.android_secure - les applications déplacées sur la carte SD sont stockées ici

Notez que les applications stockent également des données dans plusieurs emplacements, et tous ceux-ci ne sont pas sur la carte SD, même si l'application elle-même est installée sur la carte SD ; c'est probablement le problème avec l'application sur votre appareil, et malheureusement - sans rooter l'appareil et utiliser quelque chose comme a2sd qui vous permet de déplacer d'autres partitions sur la carte SD.

Pour plus d'informations, voir également cette question sur StackOverflow qui a plus d'informations.

0 votes

Merci beaucoup pour votre réponse! J'ai en effet rooté mon téléphone, mais je ne comprends pas vraiment ce que fera le a2sd. Le lien que vous avez fourni - corrigez-moi si je me trompe - est un guide pour déplacer le système d'exploitation sur la carte SD... Je crois que ce n'est pas la chose la plus sûre à faire, n'est-ce pas?

1 votes

Correct, cela comporte un risque assez important et nécessite une bonne compréhension du système Android pour en tirer le meilleur parti - je ne le recommanderais certainement pas aux âmes sensibles :) Pour répondre à votre question concernant le déplacement du système d'exploitation vers la carte SD, c'est globalement correct, mais vous pouvez être assez sélectif quant aux partitions déplacées et à leur manière de le faire, ce qui le rend assez puissant.

0 votes

Puissant? Ça a l'air délicieux! Avez-vous en tête un tutoriel ou un guide pour aider à faire cela? Ces avertissements de mémoire sont vraiment ennuyeux, je peux le dire!

0voto

Ragib Points 1

L'emplacement réel (ou le chemin) de la carte SD externe (pas interne, parfois le stockage interne disponible pour l'utilisateur est considéré comme étant un stockage externe (dans le développement Android)) varie d'un appareil à un autre. Donc, vraisemblablement, le chemin des applications installées sur la carte SD diffère également d'un appareil à l'autre. Si vous voulez vraiment connaître l'emplacement réel des applications installées (sur la carte SD), vous devez faire un peu de programmation.

Mais dans la plupart des cas (appareils Samsung fonctionnant sous Lollipop), le package de l'application se trouve à l'intérieur de /mnt/asec/[nom_du_package] et le fichier .apk se trouve à l'intérieur de /mnt/asec/[nom_du_package]/[nom_de_l'application].apk. Si vous voulez vraiment savoir où il se trouve, mettez le code ci-dessous à l'intérieur de la méthode onCreate() et exécutez l'application sur l'appareil que vous souhaitez. Il vous montrera tous les emplacements des applications qui sont sur la carte SD...

En espérant que cela vous aidera...

PackageManager pm = getPackageManager();
    List infos = pm.getInstalledApplications(0);
    for (int i = 0; i < infos.size(); ++i) {
        String src_path = infos.get(i).sourceDir;
        if (!src_path.contains("/system") &&
                !src_path.contains("/data")) {
            // affichage du chemin en tant que message toast
            // vous pouvez même l'afficher avec System.out.println()
            Toast.makeText(this, src_path, Toast.LENGTH_SHORT).show();
        }
    }

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