Как получить свойства или имя двух или более парных клавиатур BlueTooth (клавиатура Belkin ..)
Я создаю простой тестовый проект, в котором присутствует только метка. Две клавиатуры Bluetooth (клавиатура Belkin) подключены к iPad. Я хочу найти имя каждого устройства или любые свойства или любой уникальный путь тех устройств, которые я могу показать его имя при нажатии любой клавиши с пин-панели. Я хочу найти входные данные с какого устройства. Я попытался использовать ядро Bluetooth, но он показывает только периферийные устройства, не показывающие имя моей клавиатуры Bluetooth. Я также ищу IOBluetooth, но это для macOS. Я требую использовать его в iOS swift. Пожалуйста, помогите мне.
пробовал таким образом ...
// Использование внешнего аксессуара
import UIKit
import ExternalAccessory
class ViewController: UIViewController
{
@IBOutlet weak var tableView: UITableView!
var manager = EAAccessoryManager.shared()
override func viewDidLoad() {
super.viewDidLoad()
let a = manager.connectedAccessories.count
print(a)// print 0
NotificationCenter.default.addObserver(self, selector: #selector(deviceConnected), name: NSNotification.Name.EAAccessoryDidConnect, object: nil)
}
@objc func deviceConnected(notification: NSNotification)
{
if let acc = notification.userInfo![EAAccessoryKey]
{
showAccessoryInfo(accessory: acc as! EAAccessory)
print("Connected:", acc)
}
tableView.reloadData()
}
func showAccessoryInfo(accessory: EAAccessory)
{
print("title\(accessory.manufacturer) and name :\(accessory.name) and message \(accessory.description)")
}
func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return manager.connectedAccessories.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
print("10")
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)
let acc = manager.connectedAccessories[indexPath.row]
cell.textLabel?.text = "\(acc.manufacturer) \(acc.name)"
cell.detailTextLabel?.text = "\(acc.modelNumber) \(acc.serialNumber)\n fr:\(acc.firmwareRevision) hr: \(acc.hardwareRevision)"
print("11")
return cell
}
func tableView(_ tableView: UITableView, accessoryButtonTappedForRowWith indexPath: IndexPath) {
let acc = manager.connectedAccessories[indexPath.row]
showAccessoryInfo(accessory: acc)
print("12")
}
}