Forcer Google Maps à enregistrer les cartes mises en cache sur la carte SD

18

Je télécharge un grand nombre de zones de carte dans Google Map pour une utilisation hors ligne. Il semble que, par défaut, Google Map écrit son cache dans la mémoire interne relativement rare de mon téléphone. Existe-t-il un moyen de forcer Google Maps à utiliser la carte SD à la place?

J'utilise Google Maps 6.7.0 (dernière version en date de mai 2012) sur Android 2.3.3.

Tony le poney
la source
Avez-vous finalement pu résoudre ce problème?
Jagger

Réponses:

7

Effectuez une mise à jour vers Maps 6.9.0 (publiée le 2012-06-27) ou une version ultérieure si vous ne l'avez pas déjà fait. Google a ajouté la fonctionnalité que vous vouliez:

Contenu de cette version:
* Enregistrer les cartes pour une utilisation hors ligne

En plus de cela: les tuiles mises en cache pour Google Maps sont enregistrées sur la carte SD .

Pour répondre également à votre question exacte (pour les utilisateurs qui ne peuvent pas mettre à niveau):

Utilisez le mécanisme `` déplacer vers sdcard '' fourni par Android ou installez des applications tierces pour le faire (Link2SD, Skripts App2SD, la plupart ont cependant besoin d'une rom personnalisée).

Si tout ce qui précède n'est pas une option et que vous aimez le faire manuellement:

Conditions préalables:

  • Accès root
  • Savoir quel répertoire vous souhaitez déplacer
  • Assurez-vous que le répertoire ne contient pas d'exécutables
  • Sensibilisation : / sdcard / est lisible dans le monde entier et de nombreuses applications peuvent y écrire.
    Vous ne voudrez peut-être pas exposer des données sensibles à d'autres applications
  • Assurez-vous que l'application ne fonctionne pas .
  • Si quelque chose se casse, vous pouvez le réparer en effaçant les données d'application
  • L'application peut se casser si la carte SD n'est pas accessible (par exemple, un téléphone branché sur un PC)

A. Vous devez trouver le nom du package de l'application souhaitée (inversez simplement les étapes ici , c'est-à-dire allez sur le site Web de Google Play de l'application et voyez le nom du package dans l'URL du navigateur, pour Maps, c'est 'com.google.android. apps.maps ').
L'emplacement des données internes de l'application est alors: / data / data / [PKG_NAME]

B. Trouvez le grand sous-répertoire que vous souhaitez déplacer, utilisez un émulateur de terminal ou un accès au shell adb pour exécuter quelque chose comme ceci sur l'appareil:

me@workstation:~$ adb shell
root@android:/ # cd /data/data/com.google.android.apps.maps
root@android:/data/data/com.google.android.apps.maps # du -sh *
8.5K app_sslcache
9.0K cache
55.0K databases
52.0K files
2.0K lib
2.5K shared_prefs

Déplacer et créer un lien symbolique

mkdir -p /sdcard/Android/data/[PKG_NAME]/linked mv /data/data/[PKG_NAME]/[BIG_DIR] /sdcard/Android/data/[PKG_NAME]/linked/[BIG_DIR]
ln -s /sdcard/Android/data/[PKG_NAME]/linked/[BIG_DIR] /data/data/[PKG_NAME]/[BIG_DIR]

ce4
la source
J'ai exactement le même problème. Ma version de Google Maps est 6.14.2, mais l'application essaie toujours d'enregistrer le contenu hors ligne dans la mémoire interne. Le problème est que je ne trouve pas l'endroit où je pourrais changer ce comportement. Des idées?
Jagger
Vous avez probablement besoin de root pour trouver le dossier des cartes (s'il est interne à l'application et non sur la carte SD).
ce4
-2

Vous pouvez utiliser le navigateur racine ou l'explorateur de fichiers ES. Cependant, vous avez besoin d'un périphérique rooté pour accéder au répertoire racine.

user38564
la source
1
Pouvez-vous expliquer comment cela résoudrait le problème du PO? Vous pouvez certainement déplacer les fichiers avec un explorateur de fichiers (+ root), mais Google Maps ne saurait probablement pas où chercher.
eldarerathis