web-dev-qa-db-fra.com

Android Eclipse DDMS - Impossible d’accéder aux données / données / sur le téléphone pour extraire des fichiers

Lors du test de mes applications, j'utilise des émulateurs et mon propre téléphone pour vérifier que tout fonctionne correctement. Mes applications écrivent également des données dans des préférences partagées et un fichier texte.

Je peux extraire les données de mes émulateurs via le DDMS dans Eclipse afin de pouvoir lire les fichiers de données sur mon ordinateur, mais lorsque j'essaie d'ouvrir ces dossiers via le DDMS de mon téléphone, rien ne se passe. arrive. Je clique sur le dossier de données et rien ne se passe.

Mon téléphone est enraciné. Existe-t-il un moyen de récupérer les fichiers de mon téléphone? Je sais que Android conserve ces dossiers privés, mais il doit y avoir un moyen. L'émulateur est simplement moyen trop lent.

77
dell116

Sur le rooted device, vous pouvez le faire:

  1. Ouvrir cmd
  2. Tapez adb Shell
  3. su
  4. Appuyez sur "Autoriser" sur l'appareil
  5. chmod 777 /data /data/data /data/data/com.application.package/data/data/com.application.package/*
  6. Accéder à la vue DDMS dans Eclipse

Après cela, vous devriez pouvoir parcourir les fichiers sur l'appareil.

Pour obtenir les bases de données:

  1. chmod 777 /data/data/com.application.package/databases /data/data/com.application.package/databases/*

S'il retourne permission denied sur su

Allez à Settings> Developer Options> Root access> Apps and ADB

162
peceps

Personne ne semble comprendre qu'un Nexus One de détail, même après avoir été rooté, ne vous laissera pas parcourir le système de fichiers à l'aide de DDMS File Explorer. Nous parlons ici de vrais téléphones et non de l'émulateur. Si vous possédez un téléphone de développeur Nexus One, vous pouvez parcourir le système de fichiers à l'aide de DDMS Filer Explorer, mais vous ne pouvez pas utiliser un Nexus One de vente au détail qui a été créé. Je l'ai?

J'espère donc que cela répond à la question de ne pas être en mesure d'utiliser l'explorateur de fichiers DDMS pour parcourir le système de fichiers d'un compte Nexus One enraciné. Après l’enracinement d’un Nexus One au détail, il reste encore quelque chose à faire pour utiliser DDMS afin d’utiliser l’explorateur de fichiers pour parcourir le système de fichiers du téléphone. Je ne sais pas ce que c'est. Peut-être que quelqu'un d'autre sait.

6
Vince

Si donne "permission refusée" sur adb Shell -> su ...

Certaines ROM exécutent le démon adbd en mode sécurisé (adbd n’a aucun accès root et la commande su n’affiche même pas de dialogue de demande d’autorisation sur le périphérique). Dans ce cas, vous obtiendrez une "autorisation refusée" si vous essayez cmd -> adb Shell -> su. La solution que j'ai trouvée est une application du célèbre moddeur Chainfire appelée Adbd Insecure.

4
WindRider

Vous devez modifier l'autorisation du dossier de données.

J'utilise l'application "Root Explorer" (voir marché) en mode racine.

En haut, sélectionnez "Monunted as r/w"

puis appuyez sur le dossier de données (clic long) et recherchez l'option Permission

Avoir un somenthing comme ça

        read    write  execute

Utilisateur

Groupe

Autres

Assurez-vous que les "autres" ont un chèque à lire

Ensuite, allez Eclpse et essayez à nouveau.

Désolé pour mon anglais, j'espère pouvoir vous aider.

3
cristianego

Pour définir l'autorisation sur le dossier data et sur tous ses sous-dossiers et fichiers:
Ouvrez l’invite de commande à partir du dossier ADB:

>> adb Shell
>> su
>> find /data -type d -exec chmod 777 {} \;
2
h0ussni

beaucoup plus simple que messing around with permissions dans le Android FS (ce qui donne toujours l'impression
Un hack pour moi - parce que je crois qu'il doit y avoir une sorte de integrated way) consiste simplement à:

Autoriser ADB root access et Restart the deamon avec root permissions.

  1. Tout d’abord, assurez-vous que ADB peut avoir un accès root sur votre appareil (ou votre émulateur):
    (Settings -> Developer Options -> Root-Access for ADB ou Apps & ADB.
  2. Redémarrez le service ADB avec les autorisations root:
    Ouvrir un command Prompt et tapez: adb.exe root
  3. Redémarrez ADM (Android Device Manager):
    Enjoy parcourant tous les fichiers
  4. Pour annuler ce processus:
    Type adb.exe unroot dans votre command Prompt.
2
Cadburry

Même s’il est un peu trop tard pour essayer de répondre, je vais laisser ce qui a fonctionné pour moi.

La solution de Peceps n'a pas fonctionné car l'application SuperUser n'autorisait pas "Shell" d'avoir un accès root. Ma solution consiste donc à utiliser directement une autre application, telle que RootExplorer, et à parcourir les dossiers correspondants.

1
Gonan

S'il retient "permission refusée" sur adb Shell -> s ...

Allez dans "Options pour les développeurs" -> Accès à la racine -> "Applications et ADB"

1
Gunnar Bernstein

Quand je dis système de fichiers, je parlais de tout le système de fichiers. Mais vous ne pouvez parcourir qu'une partie du système de fichiers sur un téléphone commercial, peut-être même la majeure partie du système de fichiers, mais pas ./data. Désolé pour la confusion que cela peut avoir causé.

C'est alarmant pour moi car j'ai un Nexus One en vente et un développeur/déverrouillé Nexus One. Depuis que j'ai créé mon Nexus One, je ne peux pas comprendre pourquoi je ne peux pas parcourir tout le système de fichiers, contrairement à mon développeur Nexus One.

0
Vince