28 votes

Comment puis-je transférer des photos vers mon appareil Android Jelly Bean tout en préservant la date et l'heure d'origine?

J'ai récemment acheté un Nexus 4 et j'aimerais transférer mes photos de mon appareil précédent vers celui-ci. Mon ancien téléphone Android utilisait le stockage de masse USB standard, ce qui ne posait aucun problème pour copier des fichiers, mais le Nexus 4, comme de nombreux autres téléphones Android modernes je suppose, utilise plutôt le MTP, qui a la particularité intéressante de refuser de copier les dates/heure originales des fichiers, utilisant à la place la date à laquelle les fichiers sont copiés.

C'est évidemment très embêtant quand il s'agit de photos; non seulement parce qu'on ne peut pas vérifier la date d'origine à laquelle la photo a été prise en naviguant sur le téléphone, mais aussi parce qu'elles se retrouvent complètement désordonnées.

Existe-t-il un moyen de transférer des photos vers un téléphone Android Jelly Bean qui ne prend pas en charge le stockage de masse USB en préservant les horodatages d'origine ?

Les choses que j'ai essayées jusqu'à présent :

  • Transfert via USB MTP
  • ADB push (à la fois des dossiers complets et des fichiers individuels)
  • Transfert via SSH (en utilisant SSHDroid + WinSCP)
  • Téléchargement et téléchargement depuis Dropbox
  • Transfert d'un fichier ZIP via MTP et décompression du fichier sur le téléphone
  • Transfert depuis l'autre téléphone via Bluetooth

Aucun d'entre eux n'a préservé l'horodatage, et cela me rend fou.

(De plus, je ne suis pas encore rooté, mais si le seul moyen viable nécessite un root, j'accueillerais également cette réponse.)

0 votes

Est-ce qu'Android prend en charge le détartrage des fichiers .tar? Si c'est le cas, peut-être pourriez-vous copier un fichier .tar des images. Je ne sais pas si le détartrage modifierait ou non la date et l'heure des fichiers individuels.

0 votes

@Chance a déjà essayé cela auparavant mais cela n'a pas aidé non plus ; le problème est que par défaut, rien n'a les privilèges pour écrire le timestamp, donc il n'y a rien à faire sauf rooter actuellement.

2voto

Turtle Points 121

Je rencontre exactement le même problème. Il semble que ce soit bloqué par le fusible sur le Nexus 4 fonctionnant sous JellyBean 4.2.1 d'origine.

SYMLINKS:
/sdcard -> /stockage/emulated/legacy
/stockage/emulated/legacy -> /mnt/coquille/emulated/0

POINT DE MONTAGE:
/mnt/coquille /dev/fusible /mnt/coquille/emulated fusible \
    rw,nosuid,nodev,relatime,user_id=****,group_id=****,permissions_par_défaut,allow_other 0 0

Ces informations ont été obtenues via une session shell adb; je présume que le fusible sera impliqué pour tous les comptes d'applications de niveau.

TL;DR Apparemment, cela ne peut pas être fait sans rooter le téléphone.

1 votes

Ma "solution" pour le moment est de télécharger les photos des anciens téléphones une par une dans l'ordre chronologique, avec des pauses entre chaque, dans un répertoire différent. Voici le script shell Linux que j'utilise : [old_pictures]$ for f in $(ls -1 * | sort -t _ -k 2); do adb push $f /storage/sdcard0/DCIM/Past/; sleep 3; done; Si vous choisissez cette méthode, faites d'abord un test de téléchargement pour vous assurer que vous êtes satisfait. De plus, désactivez le téléchargement instantané de Google+ pendant que vous y êtes pour éviter les "doubles téléchargements".

0 votes

Merci, ça aide; quant à ton script : à la fois mtp via Windows and adb push perdent la connexion pour moi après le premier millier de fichiers environ dans mon cas, et certains fichiers finissent aléatoirement corrompus, est-ce que tu vois la même chose? en gros comme le problème décrit ici : code.google.com/p/android/issues/detail?id=35185 (peut-être devrais-je poser une question séparée, car ce n'est pas directement lié aux horodatages eux-mêmes. Mais j'adore mtp)

2voto

Daniele Segato Points 141

Si vous utilisez l'application Google Photo et que vous voulez que vos fichiers soient listés dans le bon ordre, il y a une solution.

Le fond du problème

Ceci est un bug Android. Il ne permet pas à un utilisateur non root de modifier la date de modification des fichiers (https://code.google.com/p/android/issues/detail?id=18624 depuis l'introduction du système multi-utilisateurs / sandbox avec le système de fichiers FUSE). Et ne préserve pas l'horodatage lors de la copie de fichiers avec le protocole MTP (https://code.google.com/p/android/issues/detail?id=92635).

La solution de contournement pour les utilisateurs de Google Photos

Les photos sont classées en utilisant les informations EXIF si elles sont disponibles, vous pouvez simplement utiliser n'importe quelle méthode de réglage des bonnes données EXIF. N'importe quel appareil photo devrait le faire automatiquement pour vous, assurez-vous juste que la date/heure est correcte dans les photos.

Pour les vidéos ou si vous ne voulez pas définir les données EXIF, allez simplement sur https://photos.google.com/ et téléchargez vos vidéos/photos à partir de là. Il préserve la date de modification que vous avez sur votre ordinateur et puisqu'il est synchronisé avec votre appareil, vous verrez la photo dans l'application, correctement triée, dès que vous aurez terminé le téléchargement.

1voto

Milner Points 533

Utilisez un outil de synchronisation comme par exemple FolderSync, qui devrait prendre en charge les horodatages en conséquence. Les outils de synchronisation devraient être spécialisés dans la gestion de tous les aspects de la maintenance de copies synchrones -- y compris les horodatages, bien sûr.

0 votes

J'ai essayé quelques outils de synchronisation, mais aucun n'a synchronisé le timestamp, parce que je suppose qu'il y a une sorte de protection. Merci pour la réponse cependant.

0 votes

Avez-vous essayé FTPSyncX Trial? Ce n'est peut-être pas le look le plus sophistiqué (le développeur n'est pas un designer). Mais j'utilise la version Pro depuis environ un an déjà, et elle synchronise très bien les timestamps via SFTP/SSH (le seul protocole que j'utilise -- l'application peut en gérer plus).

0 votes

Je vais vérifier, mais étant donné que SSHDroid n'a pas fonctionné pour moi, je suppose que je n'obtiendrai pas non plus les horodatages avec celui-ci.

1voto

Marhensa Points 11

Préserver la date de modification sur un appareil Nexus (pas besoin de root)

  • De Android vers PC : Utiliser MTP
  • De PC vers Android : Utiliser Droid Explorer

Cela préserve la date de modification. Je ne sais pas comment Droid Explorer le fait. Mais ça fonctionne simplement.

Assurez-vous que le débogage USB est activé avant d'utiliser Droid Explorer.

Il y a cependant une limitation. Droid Explorer ne peut transférer que des fichiers, pas des dossiers.

  • Avec Droid Explorer, copiez des fichiers dans un téléphone Android dans un dossier spécifique
  • Ensuite, avec le gestionnaire de fichiers à l'intérieur d'Android, déplacez ces fichiers dans le dossier souhaité. Ne pas utiliser la fonction copier car cela modifiera la date de modification alors que la fonction couper ne le fera pas.

0 votes

Droid Explorer nécessite ROOT, n'est-ce pas?

0 votes

@AntonK Oui, Droid Explorer a besoin de Root pour préserver le timestamp. Si Root n'est pas disponible, il écrasera la date : maxrev.de/…

1voto

Utilisez PTP au lieu de MTP lorsque vous connectez votre téléphone par USB. Ça marche pour moi, j'utilise un Samsung Note 4 connecté à un ordinateur Ubuntu 14.04. Cependant, se connecter en PTP ne permet que de copier des images. Tous les autres méthodes de copie de fichiers (bluetooth, WIFI, gestionnaire de fichiers) sur un disque externe vont modifier la date.

0 votes

J'ai testé cela avec Windows 10 et un Note 3 utilisant CM 12.1 (Android 5.1.1). J'ai déplacé les fichiers (la seule façon dont Windows permet de conserver) mais cela n'a pas préservé les horodatages. :(

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