Ответ
Да, работал с различными смежными устройствами через Bluetooth, NFC и Wi-Fi Direct. Например, подключал смартфоны к фитнес-трекерам через Bluetooth Low Energy (BLE), передавал данные между устройствами через NFC или реализовывал обмен файлами через Wi-Fi Direct.
Пример с BLE:
val gattCallback = object : BluetoothGattCallback() {
override fun onConnectionStateChange(gatt: BluetoothGatt, status: Int, newState: Int) {
if (newState == BluetoothProfile.STATE_CONNECTED) {
gatt.discoverServices()
}
}
override fun onServicesDiscovered(gatt: BluetoothGatt, status: Int) {
val service = gatt.getService(UUID.fromString("..."))
val characteristic = service.getCharacteristic(UUID.fromString("..."))
gatt.readCharacteristic(characteristic)
}
}
Также есть опыт работы с USB-устройствами через UsbManager и кастомными протоколами.