Я получаю контакт на моем телефоне, используя этот код
DispatchQueue.main.async {
let allowedCharset = CharacterSet
.decimalDigits
let store = CNContactStore()
//store.requestAccess(for: .contacts, complete:() -> ()) { (granted,err) in
store.requestAccess(for: .contacts) { (granted, err) in
if let error = err
{
print("failed to access",error)
return
}
if (granted)
{
print(Thread.current)}
Однако я обнаружил, что пользовательский интерфейс зависает, и я получаю, что текущий поток имеет значение NULL, хотя я указал его для запуска на mainThread.
print (Thread.current) =