Процесс спаривания, который я использую >: Отображает респондер, метод ввода инициатора. Возможность извлечь устройства, которые я уже соединил, что имеет решающее значение для моего проекта < /p>
Однако я сталкиваюсь с проблемой во время процесса сочета Соединение ', несмотря на то, что оба устройства успешно соединились (как указано на экране другого устройства), только через некоторое время. /> Я попробовал это с двумя разными iPhone (12 Pro и 13 Pro Max с разными iOS 18 версиями) и несколькими устройствами «пары» (у всех были разные прошивки) < /p>
Здесь я инициализировал AspickerDisplayItem: < /p>
Код: Выделить всё
internal struct MyAccessory
{
private static let serviceUuid: String = "180A"
public static let name: String = "MyDevice"
public static let image: UIImage = UIImage( named: "MyImage" )!
public static let services: CBUUID = CBUUID( string: serviceUuid )
public static let pickerDisplayItem: ASPickerDisplayItem =
{
let descriptor: ASDiscoveryDescriptor = ASDiscoveryDescriptor()
descriptor.bluetoothServiceUUID = services
let pickerDisplayItem = ASPickerDisplayItem(
name: name,
productImage: image,
descriptor: descriptor
)
// For Passkey Entry '.confirmAuthorization' is needed
pickerDisplayItem.setupOptions = [.confirmAuthorization, .finishInApp]
return pickerDisplayItem
}()
}
< /code>
и быстрый образец того, как работает приложение (что аналогично этому примеру, приведенному Apple: < /p>
public class AccessoriesManager
{
private var accessorySession: ASAccessorySession = ASAccessorySession()
init()
{
accessorySession.activate( on: DispatchQueue.main, eventHandler: handleSessionEvent )
}
public func startScan()
{
accessorySession.showPicker( for: [
MyAccessory.pickerDisplayItem
]
)
{ error in
if let error
{
print( "Failed to show picker due to: \( error.localizedDescription )" )
}
}
}
private func handleSessionEvent( event: ASAccessoryEvent )
{
switch event.eventType
{
case .accessoryAdded:
/*
Continue the configuration
*/
break
default:
break
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/794 ... le-pairing