Ответ 1
Из терминала Ubuntu, ниже работает для меня.
./adb push '/home/hardik.trivedi/Downloads/one.jpg' '/data/local/'
Как перенести файл с компьютера на устройство Android, в котором нет SD-карты. Я пробовал:
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)
выше, чтобы переместить файл anand.jpg
на устройство, но я не получил этот jpg
файл на устройстве.
Я не получил никакого результата в команде cmd, я получил:
3399 KB/s (111387 bytes in 0.032s).
Из терминала Ubuntu, ниже работает для меня.
./adb push '/home/hardik.trivedi/Downloads/one.jpg' '/data/local/'
Я сделал это с помощью этой команды:
Синтаксис: adb push filename.extnsion /sdcard/0/
пример: adb push UPDATE-SuperSU-v2.01.zip /sdcard/0/
Следуй этим шагам:
перейдите на Android Sdk, затем путь "инструменты платформы" на вашем терминале или консоли
(на Mac путь по умолчанию: /Users/ИМЯ ПОЛЬЗОВАТЕЛЯ /Library/Android/sdk/platform-tools)
Для проверки SDC-карт (внешних и внутренних), установленных на вашем устройстве, выполните следующие команды:
Теперь вы увидите список каталогов и файлов с вашего устройства Android, где вы можете найти /SDCard, а также /Storage
вы можете увидеть sdcard0 (обычно sdcard0 - это внутреннее хранилище) и sdcard1 (если есть External SDCard)
выйти из оболочки adb
скопировать файл
Иногда вам требуется расширение,
adb push file.zip/sdcard/file.zip
выполните команду ниже
adb root
adb remount
Затем выполните то, что вы вводили ранее
C:\anand>adb push anand.jpg /data/local
C:\anand>adb push anand.jpg /data/opt
C:\anand>adb push anand.jpg /data/tmp
У меня есть Nexus 4, без внешнего хранилища. Однако Android думает, что он один, потому что он монтирует выделенный раздел под названием "storage", установленный в "/storage/emulated/legacy", поэтому попробуйте нажать там: adb push anand.jpg /storage/emulated/legacy
Мое решение (пример со случайным файлом mp4 mp4):
Установите файл на устройство:
adb push /home/myuser/myVideoFile.mp4 /storage/emulated/legacy/
Получить файл с устройства:
adb pull /storage/emulated/legacy/myVideoFile.mp4
Для получения пути в коде:
String myFilePath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/myVideoFile.mp4";
Это все. Это решение не дает проблем с разрешениями и работает нормально.
Последняя точка: я хотел изменить информацию о метаданных видео. Если вы хотите записать на свое устройство, вы должны изменить разрешение в AndroidManifest.xml
. Добавьте эту строку:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Как есть разные пути для разных версий. Вот общее решение:
Найди путь...
adb shell
в командной строке.ls
и Enter. Теперь вы увидите файлы и каталоги устройства Android. Теперь с помощью комбинации ls
и cd dirName
найдите путь к внутреннему или внешнему хранилищу.
В корневом каталоге имена каталогов будут такими, как mnt, sdcard, emulator0,
т.д.
Пример: adb push file.txt mnt/sdcard/myDir/Projects/
Вы пытаетесь записать в системные папки. С ADB у вас есть доступ root (admin), поэтому вы видите системные папки, из которых sdcard является одним из них, чтобы отправить изображение, которое вы могли бы использовать
D:\Program Files\Android\sdk\platform-tools\adb push am files\android sdk\adb.exe нажмите C:\Downloads\anand.jpg/sdcard/pictures/
NB: C:\Downloads\anand.jpg замените путь и имя на картинку.
Некоторые версии android не запускают надлежащие задачи для обновления состояния файловой системы. Вы можете вызвать явное намерение обновить статус файловой системы. (Я просто тестировался после того, как был в той же ситуации с ОП)
adb shell am broadcast -a android.intent.action.MEDIA_MOUNTED -d file:///
(Вы можете передать определенный путь к файлу вместо file:///
, например file:///sdcard
)
В моем случае у меня была уже удаленная SDCard, еще зарегистрированная на Android. Поэтому я нажал на запись для своей старой SDCard:
Settings | Storage & USB
и выберите "Забыть".
Затем нормальный
adb push myfile.zip /sdcard/
работал нормально.
Попробуйте это вставить во внутреннюю память.
adb push my-file.apk./storage/emulated/0/
Работает в устройстве One plus, без SD-карты.