Java: получить диск №. свойство из музыкального файла с WPD на устройстве MTP?

Это (своего рода) дополнительный вопрос к

Эта проблема

Я занимаюсь разработкой приложения Java, которое может синхронизировать локальную музыку в исходной папке на моем ПК (скажем, в C:\Users\Squirrel\Music\) с целевой папкой на устройстве MTP, карте памяти или в другом месте на ПК. Он ищет различия в тегах и следит за тем, чтобы музыка в целевой папке соответствовала музыке в моей исходной папке.

Однако, если я хотел синхронизироваться с устройством MTP (например, Android), я обнаружил, что протокол MTP "скрывает" букву диска, поэтому я не могу просто получить доступ к музыке с помощью класса File.

Что я пробовал

Используя jMTPe, я узнал, как читать и записывать каждый тег на устройство с MTP (где каждое устройство рассматривается как WPD (сокращение от Windows Portable Devices)), за исключением номера диска. Заглядывать внутрь Win32WPDDefines.java для соответствующих PropertyKey Я нашел ключи свойств для альбома, жанра и т. Д., Но не для номера диска ( ссылка на документацию по свойствам и атрибутам).

Все еще надеясь, я попытался установить Windows Driver Kit (v. 1703) для VS15, просто чтобы заполучить WPD Information Tool. Я запустил версию x86, расположенную на моем устройстве Android MTP.mp3, но у него не было свойства номера диска. (Версия x64 не правильно перевела значения в столбце " Имя свойства".) Вот изображение того, что я видел на WPDInfo.

После нескольких дней исследований и копаний в исходных файлах я сдался. Кто-нибудь знает, как получить и установить диск. нет. имущество?

Техническая информация.

У меня Java JDK 121 (64-разрядная версия) работает на Win. 7 Pro. ноутбук.

0 ответов

Другие вопросы по тегам