У меня есть приложение, которое подключается к периферийному устройству BLE и извлекает из него данные.Приложение работает как отдельное приложение (т. Е. Когда оно открыто, оно может связываться с моим периферийным устройством и считывать данные, которые мне нужны.) Я хочу создать собственное расширение клавиатуры для этого приложения, чтобы можно было вставлять данные с моего периферийного устройства.в другие приложения.Я добавил собственное расширение клавиатуры для своего приложения.У меня есть следующее расширение в моем файле KeyboardViewController.swift:
extension KeyboardViewController {
func insertText(_ text: String) {
textDocumentProxy.insertText(text)
}
func deleteBackward() {
}
}
Теперь я хочу вызвать эту функцию в быстром файле моего приложения (тот, который устанавливает соединение BLE и извлекает данные).Функция ниже находится внутри
func getdata(data:Data){
let data = [UInt8](data)
let dataString = String(bytes:data,encoding: .utf8)
print("Here")
if dataString!.count > 1 {
let forceval = dataString![0..<6]
let unitcase = dataString![14..<15]
var units = ""
switch unitcase{
case "1":
units = "N"
case "2":
units = "lbf"
default:
units = ""
}
let forcevalue = forceval+" "+units
var forcevalues: String
forcevalues = " " + forcevalue
AllData.insertText(forcevalues)
//This is where I think I should be calling my function.
keyboard.insertText(forcevalue)
}
}
. Клавиатура является экземпляром моего KeyboardViewController:
let keyboard = KeyboardViewController()
Приложение и расширение являются целевыми элементами друг для друга.Как получить расширение клавиатуры для вставки данных из моего членского приложения?