簡體   English   中英

Android 藍牙設備 Kotlin

[英]Android Bluetooth devices in Kotlin

pairedDevices=mBluetoothAdapter?.bondedDevices
for (d in listOfNotNull(pairedDevices)) {
    blueArray?.add(d._____)
}

blueArray是一個ArrayList ,我想在其中存儲可用藍牙設備的字符串名稱,但是 - d.getName()不工作

我能做什么?

在這種情況下, listOfNotNull()將僅使用getBondedDevices()返回的唯一元素創建一個列表。 您正在創建List<Set<BluetoothDevice>>並嘗試在Set上調用getName()

可能想做這樣的事情:

for (device in mBluetoothAdapter.bondedDevices) {
    blueArray.add(device.name)
}

您應該將 pairedDevice 聲明為 BluetoothDevice 的集合,然后遍歷該集合並添加到您的數組中

val pairedDevice: Set<BluetoothDevice>? = bluetoothAdapter?.bondedDevices
        if (pairedDevice != null){
            var listDeviceName = arrayListOf<String>()
            try {
                pairedDevice.forEachIndexed { index, device ->
                    listDeviceName.add(index, device.name)
                }catch (e:IndexOutOfBoundsException){
                Log.e("TAG", "indexOutOfBond",e)
            }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM