Comment pousser un fichier d’un ordinateur vers un appareil Android n’ayant pas de carte SD. J’ai essayé:
C:\anand>adb push anand.jpg /data/local 3399 KB/s (111387 bytes in 0.032s) C:\anand>adb push anand.jpg /data/opt 3199 KB/s (111387 bytes in 0.034s) C:\anand>adb push anand.jpg /data/tmp 3884 KB/s (111387 bytes in 0.028s)
commandes ci-dessus pour déplacer un fichier anand.jpg
vers le périphérique mais je n’ai pas eu ce fichier jpg
dans le périphérique. Je n’ai pas eu de résultat de réussite sur l’invite cmd, j’ai seulement eu:
3399 KB/s (111387 bytes in 0.032s).
Du Terminal Ubuntu, ci-dessous fonctionne pour moi.
./adb push '/home/hardik.sortingvedi/Downloads/one.jpg' '/data/local/'
Je l’ai fait en utilisant cette commande:
syntaxe: adb push filename.extnsion /sdcard/0/
exemple: adb push UPDATE-SuperSU-v2.01.zip /sdcard/0/
Suivez ces étapes :
aller sur Android Sdk puis “platform-tools” sur votre terminal ou console
(sur mac, le chemin par défaut est: / Users / USERNAME / Library / Android / sdk / platform-tools)
Pour vérifier les SDCards (externes et internes) installés sur votre appareil, lancez ces commandes:
Vous pouvez maintenant voir la liste des répertoires et fichiers de votre appareil Android que vous pouvez trouver / sdcard ainsi que / storage
vous pouvez voir sdcard0 (généralement sdcard0 est le stockage interne) et sdcard1 (si la carte SD externe est présente)
sortir de shell adb
copier un fichier
Parfois, vous avez besoin de l’extension,
adb push file.zip /sdcard/file.zip
exécuter ci-dessous commande tout d’abord
adb root adb remount
Ensuite, exécutez ce que vous avez saisi précédemment
C:\anand>adb push anand.jpg /data/local C:\anand>adb push anand.jpg /data/opt C:\anand>adb push anand.jpg /data/tmp
Ma solution (exemple avec un fichier vidéo mp4 aléatoire):
Définissez un fichier sur le périphérique:
adb push /home/myuser/myVideoFile.mp4 /storage/emulated/legacy/
Récupère un fichier depuis le périphérique:
adb pull /storage/emulated/legacy/myVideoFile.mp4
Pour récupérer le chemin dans le code:
Ssortingng myFilePath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/myVideoFile.mp4";
C’est tout. Cette solution ne pose pas de problèmes de permission et fonctionne correctement.
Dernier point: je voulais changer les informations sur les métadonnées vidéo. Si vous souhaitez écrire dans votre appareil, vous devez modifier l’autorisation dans le AndroidManifest.xml
. Ajoutez cette ligne:
J’ai un Nexus 4, c’est-à-dire sans stockage externe. Cependant, Android pense en avoir un, car il monte une partition séparée appelée “storage”, montée dans “/ storage / emulated / legacy”, alors essayez d’y adb push anand.jpg /storage/emulated/legacy
: adb push anand.jpg /storage/emulated/legacy
Comme il existe différents chemins pour différentes versions. Voici une solution générique:
Trouvez le chemin …
adb shell
dans la ligne de commande. ls
et Enter. Maintenant, vous verrez les fichiers et répertoires du périphérique Android. Maintenant, avec la combinaison de ls
et de cd dirName
trouve le chemin vers le stockage interne ou externe.
Dans le répertoire racine, les noms de répertoires seront comme mnt, sdcard, emulator0,
etc.
Exemple: adb push file.txt mnt/sdcard/myDir/Projects/
Vous essayez d’écrire dans les dossiers système. Avec ADB, vous avez un access root (admin) pour que vous puissiez voir les dossiers système dont sdcard est l’un d’eux pour pouvoir envoyer une image que vous pourriez utiliser
D: \ Program Files \ Android \ sdk \ outils-plate-forme \ adb fichiers push \ android sdk \ adb.exe push C: \ Downloads \ anand.jpg / sdcard / images /
NB: C: \ Downloads \ anand.jpg remplacer par path et name to picture ..
Certaines versions d’Android ne déclenchent pas les tâches appropriées pour mettre à jour l’état du système de fichiers. Vous pouvez déclencher une intention explicite de mettre à jour le statut du système de fichiers. (Je viens de tester après avoir été dans la même situation que l’OP)
adb shell am broadcast -a android.intent.action.MEDIA_MOUNTED -d file:///
(Vous pourriez passer un chemin de file:///
spécifique au lieu du file:///
comme file:///sdcard
)
Dans mon cas, j’avais déjà une carte SD déjà retirée enregistrée sous Android. J’ai donc longtemps saisi l’entrée pour mon ancienne carte SD sous:
Settings | Storage & USB
et sélectionné “Forget”.
Après une normale
adb push myfile.zip /sdcard/
a bien fonctionné.