Я ищу способ записать файл из приложения Windows на SD-карту устройства Android через USB-соединение. Для этого мне нужно будет получить букву диска SD-карты и точку монтирования. Приложение Windows написано в C++, поэтому я больше всего надеюсь на решение в C++. Если это невозможно, возможно, есть решение Java, которое затем может быть помещено в оболочку C++, которая будет вызвана кодом моего приложения.
Я искал вокруг и придумывал несколько идей, но ничего не работает. Во-первых, я столкнулся с документацией Google по методу Environment.getExternalStorageDirectory(), но я полагаю, что, поскольку это часть Android SDK, он доступен только из приложения, находящегося на устройстве Android. Во-вторых, я столкнулся с некоторыми функциями в собственном API Windows (в первую очередь, WinBase.h), который обеспечивает способ нахождения всех дисков и их соответствующих букв, но даже если я могу получить эту информацию, я не знаю, как определить, какие из них - подключенная SD-карта устройства Android.
Любая помощь приветствуется!
Я не эксперт приложений Windows, но если вы можете использовать системные вызовы в вашей программе C++ для вызова adb.exe, вы можете выполнить команды adb непосредственно на устройстве.
Например, если вы можете выполнить "устройства adb.exe", вы можете получить список всех устройств Android, которые в настоящее время подключены к компьютеру. Оттуда вы можете использовать любые команды adb для перемещения файлов на устройство.
Подробнее о командах adb здесь: Вики-страница АБР
То, что вы ищете, возможно, делает adb devices
в сочетании с adb push <your file> /sdcard/<file on sdcard>
Удачи!