Я начинающий разработчик iOS, и я пытаюсь разработать приложение для iOS, используя Swiftui, которое подключается к Android TV и действует как пульт дистанционного управления (в локальной сети). Но я не могу установить соединение. I also tried generating the certificate in code (using swift-asn1 and swift-certificates), but I always get errors when trying to connect.
Error Domain=Failed to retrieve SecIdentity from Keychain, status: -50 Code=-50 "(null)"
or
Error Domain=Failed to add certificate to Keychain, status: -25303 Code=-25303 "(null)" < /p>
let addKeyQuery: [String: Any] = [
kSecClass as String: kSecClassKey,
kSecAttrApplicationTag as String: keyTag,
kSecValueRef as String: privateKey,
kSecAttrAccessible as String: kSecAttrAccessibleWhenUnlockedThisDeviceOnly
]
var keyAddStatus = SecItemAdd(addKeyQuery as CFDictionary, nil)
if keyAddStatus == errSecDuplicateItem {
let deleteKeyQuery: [String: Any] = [
kSecClass as String: kSecClassKey,
kSecAttrApplicationTag as String: keyTag
]
SecItemDelete(deleteKeyQuery as CFDictionary)
keyAddStatus = SecItemAdd(addKeyQuery as CFDictionary, nil)
}
if keyAddStatus != errSecSuccess {
throw NSError(domain: "Failed to add private key to Keychain", code: Int(keyAddStatus))
}
let certLabel = "com.example.atv.cert.\(host)"
let addCertQuery: [String: Any] = [
kSecClass as String: kSecClassCertificate,
kSecValueRef as String: secCertificate,
kSecAttrLabel as String: certLabel,
kSecAttrAccessible as String: kSecAttrAccessibleWhenUnlockedThisDeviceOnly // Добавлено
]
var certAddStatus = SecItemAdd(addCertQuery as CFDictionary, nil) //
Подробнее здесь: https://stackoverflow.com/questions/797 ... ate-issues