Подтвердить что ты не робот

Пример Bluetooth для Android

Кто-нибудь может дать мне учебные ссылки по Android Bluetooth или советы? Пожалуйста, не говорите мне ссылаться на пример BluetoothChat, я могу понять только, как обнаружить и подключиться к устройствам, но не знаю, как отправлять и получать данные через Bluetooth.

На самом деле я работаю над проектом Android и встроенного устройства Bluetooth. Пожалуйста, помогите мне.

4b9b3361

Ответ 2

Я также использовал следующую ссылку, поскольку другие предложили вам для связи с Bluetooth.

http://developer.android.com/guide/topics/connectivity/bluetooth.html

Всё, что вам нужно, это класс BluetoothChatService.java

этот класс имеет следующие потоки:

  • Принять
  • Подключение
  • Connected

Теперь, когда вы вызываете функцию запуска BluetoothChatService, например:

mChatService.start();

Он начинает принимать поток, что означает, что он начнет искать соединение.

Теперь, когда вы вызываете

mChatService.connect(<deviceObject>,false/true);

Здесь первый аргумент - это объект устройства, который вы можете получить из списка парных устройств или при сканировании устройств вы получите все устройства в диапазоне, которые вы можете передать этому объекту этой функции, а второй аргумент - логическое, чтобы сделать безопасным или небезопасным соединение.

connect функция начнет связывать поток, который будет искать любое устройство, на котором выполняется поток принятия.

Когда такое устройство будет найдено, оба принимают поток и соединительный поток вызовут связанную функцию в BluetoothChatService:

connected(mmSocket, mmDevice, mSocketType);

этот метод запускает подключенный поток в обоих устройствах: Используя этот связанный поток сокета, он получает поток ввода и вывода на другое устройство. И вызывает функцию read во входном потоке в цикле while, чтобы он всегда пытался читать с другого устройства, чтобы всякий раз, когда другое устройство посылает сообщение, эта функция чтения возвращает это сообщение.

BluetoothChatService также имеет метод write, который принимает byte[] как входной сигнал и вызывает метод записи в подключенном потоке.

mChatService.write("your message".getByte());

метод записи в подключенном потоке просто записывает данные байта в выходы из другого устройства.

public void write(byte[] buffer) {
   try {
       mmOutStream.write(buffer);
    // Share the sent message back to the UI Activity
    // mHandler.obtainMessage(
    // BluetoothGameSetupActivity.MESSAGE_WRITE, -1, -1,
    // buffer).sendToTarget();
    } catch (IOException e) {
    Log.e(TAG, "Exception during write", e);
     }
}

Теперь для связи между двумя устройствами просто вызовите функцию записи на mChatService и обработайте сообщение, которое вы получите на другом устройстве.

Ответ 3

На странице разработчика Android есть учебники и объясняется, как использовать функцию Bluetooth:
Надеюсь, это поможет.

Ответ 4

Существует хороший проект с открытым исходным кодом, чтобы показать вам, как общаться с устройством Android и встроенным Bluetooth-устройством.

https://github.com/akexorcist/Android-BluetoothSPPLibrary

Ответ 5

Поскольку OP еще не принял ни одного из ответов, я предлагаю несколько примеров приложений для подключения к определенным устройствам. Я не ручаюсь за качество образцов кода, но если вы ищете какой-то "настоящий" код - в смысле приложения, которое подключается к сенсорному устройству, извлекает из него показания и, может, писать устройства, это может помочь:

AndroiDAQ - это плата для создания прототипов приложений для сбора данных. Строитель Рик Флэк предоставил образец приложения для Android с открытым исходным кодом на Github. Найдите файл AndroiDAQService.java. Метод Run() в нижней части показывает как чтение, так и запись из DAQ. (YMMV). Полное приложение доступно для бесплатной загрузки из магазина приложений. Мы часто сталкиваемся с его сбоем, но может случиться так, что наша плата DAQ довольно часто выводит посторонние данные. В нашем приложении, основанном на примере Рика, мы обрабатываем нечетные дополнительные символы и не сбой по этой причине.)

Texas Instruments продает недорогой Bluetooth SensorTag с небольшим количеством встроенных датчиков на борту. Они предоставляют бесплатный SDK для работы с тегом и, IIRC, он включает исходный код для своих приложений для Android и iOs. Будьте осторожны при поиске, кажется, что, поскольку мы купили наш, они выпустили новое устройство с тем же именем, которое использует технологию Bluetooth с низким энергопотреблением, которая отличается от традиционного Bluetooth.