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. ноутбук.