Bir kullanıcının cihazındaki tüm kişilerin sayısını bilmem gerekiyor. ABAddressBookGetPersonCount üzerinde kullanımdan kaldırılması mesajı diyor: aitCNContactStore Temas kayıtlarının sayısı
kullanım sayımı Burada
nil = yüklemi CNContactFetchRequest sonuçlarını getirme O rehberlik aşağıdaki oluşur neyi edilir:
__block NSUInteger contactsCount = 0;
NSError *error;
CNContactFetchRequest *request = [[CNContactFetchRequest alloc] initWithKeysToFetch:@[CNContactGivenNameKey]];
BOOL success = [self.contactStore enumerateContactsWithFetchRequest:request error:&error
usingBlock:^(CNContact * _Nonnull contact, BOOL * _Nonnull stop) {
contactsCount += 1;
}];
if (!success || error) {
NSLog(@"error counting all contacts, error - %@", error.localizedDescription);
}
Ancak
bu bakışlar performans açısından korkunç. CNContact nesnelerini numaralandırmadan sayımı elde etmenin başka bir yolunu bulamadım. Bir şey mi eksik?
şimdiden teşekkür ederiz!
nasıl kullanımdan kaldırılması mesajında öneri gibi kod bir şey mi? – trojanfoe
CNContactFetchRequest'i yürütmenin başka bir yolu var mı? –