Для этого решения вам необходимо установить adb.
Как использовать мой файл:
1. Создайте файл с дорожками музыки
This app делает это автоматически и также позволяет импортировать списки воспроизведения (без музыкальных файлов). Но вы также можете создать этот файл другими способами, например. рукой. Убедитесь, что каждый путь к файлу находится в новой строке. Пространства в порядке.
/storage/extSdCard/Instalok/Media__t4p3f3.mp3 /storage/extSdCard/Instalok/Media__t6p5f3.mp3 /storage/extSdCard/Instalok/Media__t8p7f3.mp3 /хранение/эмулировать/0/книги/GRETE_PAIA_San_Sebastiano. mp3 /хранение/эмулировать/0/mp3/The Prodigy - 3 kilos.m4a /storage/emulated/0/mp3/Mermaid.mp3
Пример файла выше. Позвоните в этот файл playlist.txt и сохраните его на своем компьютере рядом с моим командным файлом.
2. Убедитесь, что ваш телефон готов
Подключите ваш телефон через USB с компьютером Windows и открыть CMD. Возможно, вам потребуется включить отладку USB на вашем телефоне или разблокировать блокировку экрана и разрешить доступ. Если ваш телефон подключен, adb devices
перечислит его.
3. Проверьте путь к файлу
Если автоматически сгенерированный файл, путь может быть не такой же, как ADB использования. В моем случае adb использовал /mnt/sdcard
, в то время как файл содержал все пути к внутренней SD-карте как /storage/emulated/0
. /storage/emulated/
существует через adb, но в каталоге 0
нет. В моем случае он работал для внешней SD-карты. Так проверьте свой путь, используя adb shell
и ваши обычные средства навигации: cd
и ls
Если ваш путь отличается от одного ADB потребностей, заменить его в текстовом файле или использовать опцию SearchText ReplaceText в пакетном файле , Если вам не нужен мой вариант, обязательно замените что-нибудь самим.
4. Установить папку назначения Отредактируй пакетный файл и установить pathname
нужную папку назначения.Убедитесь, что он уже существует!
5. Testrun Сохраните пакетный файл в том же каталоге, что и playlist.txt, и запустите его. Он попросит вас сделать теструн. Нажмите y, а затем Enter, чтобы он показывал, какие пути источника будут использоваться. он также проверит, существует ли папка назначения: если она не будет написана, она станет красной. Он не проверяет исходный путь, хотя это ваша собственная работа.
6. Запуск Запустите его снова, на этот раз введите что угодно, кроме y. Затем нажмите enter. На этот раз все будет работать, копируя указанные файлы в папку назначения.
Файл
сохранить его как something.bat
@echo off
REM make sure everything is set correctly
REM playlist.txt: place a text file in the same dir as this file
REM and name it playlist.txt
REM it should contain all file paths on the phone
REM each path on a new line
REM This can be autogenerated for a playlist by https://play.google.com/store/apps/details?id=org.ssi.playlistbackup
REM pathname: Where should all the files be saved to
REM SEARCHTEXT: Where the file containing all the paths says the file is
REM REPLACETEXT: Where adb shell says the file is
REM Make sure your destination folder at pathname already exists
setlocal enabledelayedexpansion
color 0f
set pathname=F:\Files\Music
set SEARCHTEXT=/storage/emulated/0/
set REPLACETEXT=/mnt/sdcard/
set /p testrun=Is this a testrun? Testrun recommended. (y/n)
if %testrun%==y (
echo Testrun
for /F "tokens=*" %%A in (playlist.txt) do (
set filename=%%~nxA
set remotename=%%A
REM replace the path with the path as adb uses it.
REM use "adb shell
REM >> ls and >>cd
REM " to find it out
SET string=!remotename!
set fixedremotepath=!string:%SEARCHTEXT%=%REPLACETEXT%!
echo I will try to load this from !fixedremotepath! to !pathname!/!filename!
)
echo This warning always appears in Testruns: Make sure you have set all variables as specified in the comments in this file.
echo If the writing turns red, check your destination Path
echo I don't check the origin paths for correctness. If they are wrong, they will be mentioned as not found.
color 0c
cd %pathname%
) else (
for /F "tokens=*" %%A in (playlist.txt) do (
set filename=%%~nxA
set remotename=%%A
REM replace the path with the path as adb uses it.
REM use "adb shell
REM >> ls and >>cd
REM " to find it out
set SEARCHTEXT=/storage/emulated/0/
set REPLACETEXT=/mnt/sdcard/
SET string=!remotename!
set fixedremotepath=!string:%SEARCHTEXT%=%REPLACETEXT%!
echo I WILL load this from !fixedremotepath! to !pathname!/!filename!
REM ------------------------------------------------------------
adb pull -p "!fixedremotepath!" "!pathname!"
REM ------------------------------------------------------------
)
)
pause