Мое приложение для Android создает некоторые файлы, которые мне нужно синхронизировать с моей основной программой на ПК и наоборот. Обычный способ сделать это - использовать учетную запись FTP, где и мое приложение для Android, и моя компьютерная программа получают последнюю версию файлов, и это прекрасно работает. Некоторые из моих клиентов не имеют доступа в Интернет на своих устройствах Android, поэтому им придется синхронизироваться с моей программой, подключившись к ПК с помощью USB-кабеля. Для этого в моей компьютерной программе есть подпрограмма, которая будет синхронизировать файлы в указанной папке на устройстве Android. Проблема заключается в том, что этот метод работает только в том случае, если устройство Android можно подключить как диск, и, таким образом, Windows может назначить букву диска.
Некоторые устройства, особенно планшеты с ОС Honeycomb (я испытал это на вкладке Samsung Galaxy 10.1 и Lenovo Thinkpad Tablet), не будут подключаться как накопители, а вместо этого будут подключаться как переносные устройства Windows (WPD). В этом случае я не могу получить доступ к устройству из моей программы (которая написана на Delphi), и поэтому моя процедура синхронизации моих файлов не работает.
Моя процедура должна знать конкретное местоположение папки, с которой нужно синхронизироваться, чтобы работать, поэтому, если я смогу перенести файлы с устройства во временную папку на ПК, синхронизировать их и, возможно, перенести файлы обратно на устройство, это решило бы мою проблему.
Может кто-нибудь предложить способ, как я могу передать файлы с устройства WPD в папку на моем ПК и обратно? Это должно быть автоматизировано, поскольку мои клиенты не могут передавать файлы вручную. В качестве альтернативы, есть ли способ заставить устройство WPD функционировать как обычный внешний диск и получить букву диска?