Baru-baru ini saya membeli Nexus 4 dan saya ingin mentransfer foto-foto perangkat saya sebelumnya ke perangkat. Ponsel Android saya sebelumnya menggunakan penyimpanan massal USB standar yang memberikan 0 masalah untuk menyalin bolak-balik, tetapi Nexus 4, seperti banyak ponsel Android modern lainnya saya kira, menggunakan MTP, yang memiliki fitur menarik yaitu menolak untuk menyalin yang asli. tanggal / cap waktu file, sebagai gantinya menggunakan tanggal di mana file disalin.
Ini jelas menyebalkan ketika datang ke foto; bukan hanya karena seseorang tidak dapat memeriksa tanggal asli di mana gambar diambil saat browsing di telepon, tetapi juga karena mereka benar-benar tidak disortir.
Apakah ada cara untuk mentransfer foto ke ponsel Android Jelly Bean yang tidak mendukung penyimpanan massal USB dengan menjaga stempel waktu asli?
Hal yang saya coba sejauh ini:
- Mentransfer melalui USB MTP
- Dorong ADB (baik folder penuh dan file individual)
- Mentransfer melalui SSH (menggunakan SSHDroid + WinSCP)
- Mengunggah dan mengunduh dari Dropbox
- Mentransfer file ZIP melalui MTP dan membuka kompresi file di telepon
- Mentransfer dari ponsel lain melalui bluetooth
- Fungsi "fix date" QuickPic
- Sinkronisasi Lokal
- Koreksi Tanggal Foto
- FTPSyncX
- Tanda asap
- Berteriak di telepon
Tak satu pun dari mereka yang mempertahankan stempel waktu, dan ini membuatku gila.
(Juga, saya belum di-root, tetapi jika satu-satunya cara yang membutuhkan root, saya akan menyambut jawaban itu juga.)
Jawaban:
Anda tidak bisa, ini adalah masalah izin saat ini ( bugreport di sini ) dari folder Android 4.0 + s / sdcard jika tidak menggunakan FAT32 (tetapi FUSE).
Alasan: Ada transisi dari FAT32 ke penyimpanan pengguna terpadu untuk aplikasi dan data media (menggunakan ext4) pada sistem file tunggal.
Properti FAT32 lama ditiru menggunakan lapisan FUSE agar kompatibel dengan aplikasi yang ada. Juga: / data / dan / sdcard pada perangkat Google yang dimulai dengan Nexus 7 hanya menggunakan satu partisi (/ data / media mewakili konten "sdcard" dan diekspos menggunakan lapisan FUSE ke aplikasi).
Inilah implementasi CyanogenMod dari driver FUSE jika Anda tertarik melihat sumbernya. Sepertinya pengaturan atribut cap waktu diimplementasikan.
EDIT: Ini hanya bekerja dengan root.
Alasan yang tepat: Semua file dimiliki oleh root.sdcard_rw (lihat di sini ).
Penelepon yang tidak menggunakan = 0 tidak dapat memanggil utimensat () syscall , itu gagal di lapisan VFS sudah (EPERM) untuk cap waktu selain dari saat ini:
sumber
Saya baru-baru ini menemukan masalah ini pada Nexus 5 dan mencoba sebagian besar solusi yang tercantum di sini tanpa hasil. Dalam kasus saya, sepertinya disebabkan oleh bug yang dikenali dengan stok Android ( sumber ).
Solusi saya adalah sebagai berikut - Saya menggunakan Windows 8.1, tetapi tidak ada alasan ini tidak akan berfungsi pada OSX / Linux (root diperlukan pada perangkat).
Di PC Anda, buat arsip .tar.gz dari semua file yang ingin Anda transfer.
Transfer arsip ke perangkat menggunakan FTP, memastikan perintah MFMT digunakan.
Di perangkat, ekstrak arsip di shell sebagai root.
su
perintah. Anda mungkin perlu memberikan akses jika SuperSU muncul.cd /sdcard/
tar -xvf ARCHIVE_NAME_HERE.tar.gz
DCIM/Camera
direktori, gambar tidak akan muncul sama sekali di aplikasi galeri stok. Jika ini terjadi pada Anda, saya sarankan Anda mengekstrak ke direktori yang berbeda dan kemudian memindahkan (tidak menyalin) file ke direktori kamera Anda. Saya menduga ini disebabkan oleh masalah izin. Anda dapat menggunakan terminal atau pengelola file pilihan Anda untuk memindahkan file.Ini memungkinkan semua file 'tanggal dimodifikasi' atribut untuk tetap utuh, dan meninggalkan semua foto dalam urutan yang benar ketika dilihat di aplikasi galeri.
sumber
Periksa data EXIF dan lihat apakah ada stempel waktu di sana.
Jika ada, Photo Date Correction akan memungkinkan Anda untuk menimpa timestamp file yang rusak dengan EXIF, memberikan Anda kembali penyortiran yang tepat.
sumber
Ini adalah pertanyaan yang sangat mengganggu saya ketika berhadapan dengan perangkat yang hanya memiliki MTP tetapi tidak dalam mode penyimpanan massal. Saya juga prihatin dengan alasan yang persis sama dengan Mahn.
Setelah beberapa pengujian, saya telah menemukan solusi temp yang mungkin dapat mempertahankan stempel waktu.
Itu menggunakan pembaca kartu sdcard / OTG luar dan juga perintah cp dengan -a timestamp akan dapat melestarikan. Tapi syaratnya ponsel harus di-root.
sumber
Seperti disebutkan dalam jawaban lain, pada perangkat yang menggunakan FUSE untuk emulasi kartu SD (seperti perangkat Nexus modern), hanya root yang dapat mengubah cap waktu file
/sdcard
. Karena hal-hal seperti MTP dan ADB tidak berjalan sebagai root, Anda tidak dapat mempertahankan cap waktu dengan metode ini. Namun, jika perangkat Anda di-rooting, Anda dapat memperbaiki cap waktu dengan langkah terpisah sesudahnya.Saat memulihkan cadangan penuh dari
/sdcard
PC Linux ke tablet saya, saya menggunakan perintah ini untuk memperbaiki semua cap waktu setelah mengunggah file denganadb push
:Ini harus dijalankan dari root direktori pada PC yang sesuai dengan
/sdcard
pada perangkat. (Atau, jika Anda mengunggah sesuatu selain/sdcard
cadangan penuh , ubah jalur dalamtouch
perintah di dekat akhir. Tetapi Anda harus menjalankan ini dari direktori apa pun di PC yang sesuai dengan direktori ditouch
perintah.)Cara kerjanya adalah bahwa ia menelusuri semua file di sisi PC, mendapatkan timestamp masing-masing, dan menjalankan
touch
perintah sebagai root pada perangkat untuk mengatur timestamp dari file yang sesuai di sana.Perhatikan bahwa ini akan menjalankan
su
perintah terpisah untuk setiap file individual. Jika Anda telah log in diaktifkan di program root Anda (misalnya SuperSU), Anda mungkin ingin menonaktifkannya untuk menghindari menghasilkan sejumlah besar entri log. Dan jika perangkat Anda telah dikonfigurasikan untuk meminta konfirmasi pada setiapsu
permintaan, Anda mungkin ingin mengubahnya sementara. (Dimungkinkan untuk membuat variasi yang menyalurkan alirantouch
perintah ke shell root tunggal pada perangkat, tetapi cara langsung melakukan itu tidak berhasil ketika saya mencobanya, dan saya tidak ingin menghabiskan banyak waktu.)Saya telah menggunakan ini dengan sukses pada Nexus 10 yang menjalankan Android 5.1.
sumber
Saya memiliki masalah yang sama persis. Tampaknya sedang diblokir oleh sekering pada Nexus 4 yang menjalankan Stock JellyBean 4.2.1.
Info itu diambil melalui sesi shell adb; Saya menganggap bahwa sekering akan berada dalam campuran untuk semua akun tingkat aplikasi.
TL; DR Dari penampilannya, itu tidak dapat dilakukan tanpa me-rooting ponsel.
sumber
[old_pictures]$ for f in $(ls -1 * | sort -t _ -k 2); do adb push $f /storage/sdcard0/DCIM/Past/; sleep 3; done;
Jika Anda mengikuti rute ini, lakukan tes unggahan terlebih dahulu untuk memastikan Anda puas. Selain itu, nonaktifkan Upload Instan Google+ saat Anda melakukannya agar Anda tidak mendapatkan "unggahan ganda".Jika Anda menggunakan aplikasi Foto Google dan Anda ingin file Anda terdaftar dalam urutan yang benar ada solusinya.
Latar belakang masalah
Ini adalah Bug Android. Itu tidak memungkinkan pengguna non-root untuk mengubah tanggal modifikasi file ( https://code.google.com/p/android/issues/detail?id=18624 sejak diperkenalkannya multi-user / sandbox dengan sistem file FUSE) . Dan tidak menyimpan stempel waktu saat menyalin file dengan protokol MTP ( https://code.google.com/p/android/issues/detail?id=92635 ).
Solusi untuk pengguna Foto Google
Foto dipesan menggunakan informasi EXIF jika tersedia, sehingga Anda dapat menggunakan cara mengatur data EXIF yang tepat. Kamera mana pun harus mengatur ini secara otomatis untuk Anda, pastikan tanggal / waktu sudah benar di dalamnya.
Untuk video atau jika Anda tidak ingin mengatur data EXIF, buka https://photos.google.com/ dan unggah video / foto Anda dari sana. Ini menjaga stempel waktu modifikasi yang Anda miliki di komputer Anda dan karena itu disinkronkan dengan perangkat Anda, Anda akan melihat foto di aplikasi, diurutkan dengan benar, segera setelah Anda selesai mengunggah.
sumber
Gunakan alat sinkronisasi seperti misalnya FolderSync , yang harus memperhatikan cap waktu yang sesuai. Alat sinkronisasi harus khusus menangani semua aspek untuk benar-benar menjaga salinan sinkron - termasuk perangko waktu, tentu saja.
sumber
MELAKUKAN TANGGAL DIMODIFIKASI PADA PERANGKAT BERIKUTNYA --- TANPA PERLU ROOT ---
ceria .. :)
itu mempertahankan Date Modified. Saya tidak tahu bagaimana Droid Explorer melakukannya. tapi itu hanya berfungsi.
pastikan USB Debuging diperiksa sebelum menggunakan Droid Explorer.
um .. ada satu batasan .. Droid Explorer hanya dapat mentransfer file, bukan folder.
sumber
Gunakan PTP alih-alih MTP saat menghubungkan ponsel Anda dengan USB. Ini berfungsi untuk saya, saya menggunakan Samsung Note 4 yang terhubung ke mesin Ubuntu 14.04. Namun, menghubungkan sebagai PTP hanya memungkinkan penyalinan gambar / gambar. Semua metode lain untuk menyalin file (bluetooth, WIFI, manajer file) ke drive eksternal akan mengubah tanggal.
sumber
Solusi saya untuk mempertahankan tanggal modifikasi selama menyalin file di perangkat Android dengan MTP:
Diuji pada saham LG G2 (tanpa root), Andorid 4.4.2 dan HTC one M7, Andorid 4.4.2:
Sejauh yang saya bisa lihat, tanggal modifikasi sepenuhnya dipertahankan!
sumber
Solusi pencadangan menggunakan "SanDisk Memory Zone" untuk mempertahankan tanggal cap waktu. salin / pindahkan file dari perangkat Android ke SDCard eksternal - Diuji pada Samsung Note 2, Note 3 dan Mini SIII
Cukup buat cadangan file foto Anda ke SDCard dan pindahkan kartu ke Android, PC, Apple, atau perangkat lain - jika tidak digunakan untuk membuat cadangan file foto Anda, ikuti 8 langkah sederhana ini "
sumber
Solusi cepat dan mudah: cukup gunakan PC atau Mac untuk menyalin file dari Kartu SD lama (atau PC) ke Kartu SD baru. Gunakan PC / Mac dengan pembaca / penulis Kartu SD (ada konverter Kartu USB ke SD) yang melihat kartu sebagai penyimpanan USB FAT32. Setelah selesai menyalin, masukkan kembali kartu baru ke telepon Anda dan reboot.
sumber
Saya pindah ke Moto X 2014 dan saya punya masalah ini.
Saya mencoba banyak hal juga, solusinya tampaknya adalah "Motorola Migrate" untuk melakukan sinkronisasi dengan WiFi dua ponsel (backflip roti jahe tua). Di galeri, situasinya baik (bahkan dalam detail), tetapi anehnya di file manager tanggalnya diubah, dan setelah beberapa jam bahkan galeri juga menunjukkan tanggal transfer.
Solusinya, jika file tidak terlalu banyak, bisa secara manual menyalin satu per satu, mengubah setiap kali tanggal dan jam di telepon.
sumber
Saya memiliki Nexus 4 dan memiliki masalah yang sama dengan cap waktu dan foto (memang semua file).
Berikut adalah baris perintah (dengan telepon yang di-rooting) yang saya gunakan, terima kasih untuk sebuah posting di Ubuntu:
(di Ubuntu jika Android SDK tidak diinstal)
Untuk masuk dalam folder saya "cadangan" yang berisi folder "savandroid"
Semua file dan folder yang ada di "saveandroid" dikirim ke kartu SD bekerja dengan baik dengan semua waktu-perangko yang benar!
Catatan : Di Cyanogenmod saya harus memilih root untuk "apps and adb" di menu pengembang. Secara default hanya diatur di aplikasi.
sumber
Saya akan menambahkan solusi saya yang berfungsi di Ubuntu
Pertama instal simple-mtpfs dan instal fuse
Sekarang Anda memiliki folder ponsel yang terpasang pada direktori ini, Anda dapat menggunakan
rsync -t
, ataucp -p
untuk menyalin gambar dan waktu yang dibuat / dimodifikasi / diakses tidak akan berubah.Bekerja untukku :)
sumber
Untuk menyalin file dari Android Anda ke PC Anda, stempel waktu:
Untuk mengembalikannya ke Android:
Ini berfungsi dengan membuat file tar di dalam perangkat, yang langsung diekstrak pada host Anda, dan sebaliknya.
"V" memungkinkan Anda melihat nama file yang sedang disalin.
Tentu saja ini mengasumsikan bahwa Anda telah "adb" diinstal, bahwa ponsel memiliki USB debugging diaktifkan, dan bahwa Anda telah memvalidasi sertifikat debugging.
sumber
Coba aplikasi "Bluetooth File Transfer" yang mempertahankan tanggal yang diubah dengan gerakan. Dan saya percaya dengan copy juga tetapi coba dengan satu file / folder terlebih dahulu untuk memastikan. Itu juga dapat menjelajahi perangkat lain melalui bluebooth.
sumber
Gunakan SyncMe Wireless dan berbagi jaringan. Stempel waktu dipertahankan dan sinkronisasinya cepat. Saya dapat mencadangkan tanpa komputer ke Kartu SD di Kingston MobileLite Wireless dalam 20 menit, sinkronisasi ulang instan.
sumber