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.
Sur le rooted device, vous pouvez le faire:
adb Shell
su
chmod 777 /data /data/data /data/data/com.application.package/data/data/com.application.package/*
Après cela, vous devriez pouvoir parcourir les fichiers sur l'appareil.
Pour obtenir les bases de données:
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
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.
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.
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.
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 {} \;
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
.
Settings
-> Developer Options
-> Root-Access for ADB
ou Apps & ADB
.command Prompt
et tapez: adb.exe root
Enjoy
parcourant tous les fichiersadb.exe unroot
dans votre command Prompt
.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.
S'il retient "permission refusée" sur adb Shell -> s ...
Allez dans "Options pour les développeurs" -> Accès à la racine -> "Applications et ADB"
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.