Как я могу скопировать несколько файлов через Bluetooth OBEX и 32feet?

Чего я хочу достичь: Напишите программу VB.NET, которая захватывает структуру папок в моей Windows 8 и копирует эту структуру в базовый каталог на моем Samsung Galaxy S6 через Bluetooth.

Я использую 32feet от alanjmcf. Спасибо за предоставление этого замечательного API.

Что мне удалось сделать на данный момент: я написал приложение VB.NET 32feet, которое успешно копирует 1 файл из Windows на мой Samsung Galaxy S6.

Извлечение кода:

    Public Sub demo()
       Dim peer As Sockets.BluetoothDeviceInfo
       Dim req As ObexWebRequest

       For Each peer In New Sockets.BluetoothClient().DiscoverDevices()
           If peer.DeviceName = "Galaxy S6" Then
               req = New ObexWebRequest _
                    (peer.DeviceAddress, _
                     "obex://" + peer.DeviceAddress.ToString + "/" + "test.txt")
               req.ReadFile("c:\users\admin\documents\test.txt")
               req.GetResponse()
               Exit For
           End If
       Next
    End Sub

Мой мобильный телефон Samsung запрашивает подтверждение. После моего «Перейти» он получает файл.

Вместо этого я хочу скопировать несколько файлов из структуры папок. И поместить их в аналогичную структуру папок на моем мобильном телефоне Samsung.

Я мог бы, конечно, перебрать мои файлы и повторить блок выше, возможно, указав папки в URI,

но мой Samsung будет запрашивать подтверждение для каждого файла, что не поддается управлению.

Что я могу сделать?

Спасибо и с уважением С. Рой


person user3599802    schedule 12.12.2016    source источник
comment
Вы можете zip файлы или создать manifest file (в котором указано, в какую папку будет извлечен файл) + фактические файлы сжать в zip, а затем отправить через Bluetooth. Создайте приложение Android, которое прослушивает передачу файлов по Bluetooth, а также читает манифест и извлекает файл в назначенную папку.   -  person conquistador    schedule 12.12.2016
comment
Спасибо конкистадор. Я попробую это. Я думал, что смогу обойти Android-приложение. Но если это то, что нужно...   -  person user3599802    schedule 13.12.2016
comment
Я думаю, вам следует установить приложение FTP-сервера Bluetooth, а затем использовать протокол OBEX FTP вместо OBEX OPP.   -  person KYHSGeekCode    schedule 16.04.2018


Ответы (1)


Вы имеете в виду под «подтверждением» то, что ваш мобильный телефон Samsung запрашивает сопряжение, показывая PIN-код? Если это так, вам нужно остановить отправку запроса на сопряжение клиентам с сервера VB.NET. Я думаю, вы можете сделать это, установив AuthenticationLevel в своем запросе.

Для экземпляра BluetoothClient я обычно устанавливаю для свойства Authenticate значение false, чтобы остановить запрос на сопряжение.

Еще одна вещь: при работе с OBEX я предпочитаю останавливать службу OBEX Windows из консоли служб, чтобы она не мешала связи Bluetooth.

person Ashraf Tirawi    schedule 02.08.2018