Ios 如何清理从iphone';谁的联系人名单?

Ios 如何清理从iphone';谁的联系人名单?,ios,swift,cncontact,Ios,Swift,Cncontact,问题是什么: 现在获取的联系人可能有国家代码扩展名,例如,假设是印度联系人,则扩展名为91。当某人的国家代码为0或甚至可能没有国家代码时,问题就会出现。您如何将其与一个数据库相匹配,该数据库包含所有手机号码和+91国家代码 那么,有没有办法清理所有联系人?我不确定这在多大程度上可能与来自多个国家的数字有关,等等 让我们考虑一下这个场景:< /强> 从联系人中提取的号码-99999999,无国家/地区代码 保存在数据库中的编号-9999999999,国家/地区代码为91 在这种情况下,如果后端

问题是什么:

现在获取的联系人可能有国家代码扩展名,例如,假设是印度联系人,则扩展名为91。当某人的国家代码为0或甚至可能没有国家代码时,问题就会出现。您如何将其与一个数据库相匹配,该数据库包含所有手机号码和+91国家代码

那么,有没有办法清理所有联系人?我不确定这在多大程度上可能与来自多个国家的数字有关,等等

<强>让我们考虑一下这个场景:< /强>

从联系人中提取的号码-99999999,无国家/地区代码

保存在数据库中的编号-9999999999,国家/地区代码为91

在这种情况下,如果后端尝试匹配这两个数字,则不会有匹配

代码:

var store=CNContactStore()
做{
尝试存储。枚举联系人(使用:CNContactFetchRequest(KeyFetch:[CNContactGivenNameKey作为CNKeyDescriptor,CNContactFamilyNameKey作为CNKeyDescriptor,CNContactPhoneNumberKey作为CNKeyDescriptor]){(联系人,光标)->在中无效

对于0中的i..所以您需要数据库中带有国家代码的电话号码…对吗?不。我想清除一个号码,以便它能够与数据库匹配,并且不会出现仅因为国家代码而无法匹配号码的情况。
var store = CNContactStore()

do {

        try store.enumerateContacts(with: CNContactFetchRequest(keysToFetch: [CNContactGivenNameKey as CNKeyDescriptor, CNContactFamilyNameKey as CNKeyDescriptor,CNContactPhoneNumbersKey as CNKeyDescriptor])) {(contact, cursor) -> Void in

            for i in 0..<contact.phoneNumbers.count {

                print((contact.phoneNumbers[i].value).stringValue)
            }
        }
    }
    catch {

        print("Error")
    }