Mam API, która zwraca numery telefonów w formacie: + 1415xxxxxxx (E164)Swift Korzystanie Kontakt Framework, wyszukiwania za pomocą numeru telefonu, aby nazwa i Image User
Teraz te numery są umieszczane w komórce UITableView i są prezentowane zgodnie z oczekiwaniami, jednak chciałbym móc przeszukiwać kontakty użytkowników w telefonie, aby sprawdzić, czy istnieje odpowiednik - jeśli tak, odeślij również imię, nazwisko i znane zdjęcie.
Patrząc na stronach Apple (https://developer.apple.com/library/watchos/documentation/Contacts/Reference/Contacts_Framework/index.html) muszę
import ContactsUI
ale potem Im pewien, mogę załadować contactDB do słownika, a następnie wyszukać go? Mogę znaleźć wiele rzeczy na poszukiwania poprzez nazwy, a mniej na szukaniu poprzez numer:
let predicate = CNContact.predicateForContactsMatchingName("Sam")
Im próbuje dostać się do funkcji, które można nazwać, że wyszuka PhoneNumber i daje mi się imię, FamilyName i Obraz.
func searchForContactUsingNumber(PhoneNumber: String)
{
// Search Via phoneNumber
let store = CNContactStore()
let contacts = try store.unifiedContactsMatchingPredicate(CNContact.predicateForContactsMatchingPhoneNumber(PhoneNumber), keysToFetch:[CNContactGivenNameKey, CNContactFamilyNameKey,CNContactImageData])
return FirstName, GivenName,UIImage
}
Mam wrażenie, że robię to wstecz, ale nie wiem, która droga jest do przodu .. Jakieś pomysły?
Co stanie się, gdy spróbujesz swojego kodu? Jakie błędy dostałeś i co nie działa? –
Kod jest w ogóle nieprawidłowy, nie sądzę, że istnieje CNContact.predicateForContactsMatchingPhoneNumber, po prostu zaadaptowałem nazwę, aby zilustrować, co próbuję uzyskać. –
Wygląda na to, że nie istnieje predykat umożliwiający podanie numeru telefonu i zwrócenie kontaktu. Prawdopodobnie dlatego, że jest to nowy interfejs API. Napisałem kod, który zwraca listę identyfikatorów kontaktów pasujących do numeru telefonu, który można następnie użyć do zwrócenia kontaktu. Czy to jest interesujące? –