Czy ktoś kiedykolwiek szukał nazw w Exchange GAL powiązanej z urządzeniem z iOS, korzystając z frameworku ABAddressBook lub w inny sposób?iOS - Jak przeszukiwać "przeszukiwalne" zasoby ABS, z ABSourceType | kABSourceTypeSearchableMask
Udało mi się uzyskać wszystkie nazwiska z kontaktów zapisanych na urządzeniu - ten bit jest łatwy - ale nie zawiera nazw z Exchange GAL.
Udało mi się również zdobyć ABSource dla GAL. To jest typ: kABSourceTypeExchangeGAL = kABSourceTypeExchange | kABSourceTypeSearchableMask
Sugeruje to źródło można przeszukiwać, biorąc pod uwagę, że kABSourceTypeSearchableMask
bit jest ustawiony (kABSourceTypeSearchableMask = 0x01000000
), ale jak szukać to tylko zgadywać? Dokumentacja prawie nie istnieje.
Istnieją podobne pytania stackoverflow wymienione poniżej, ale żaden z nich nie zapewnia rozwiązania tego.
- Using iOS Addressbook api to search exchange contacts
- ABAddressBook -- Search Exchange AddressBook Source?
- ABAddressBook ABSource and ABSourceType
ABAddressBookCopyArrayOfAllPeopleInSource(addressBook, sourceToSearch)
zawsze zwraca pustą tablicę do źródeł, które zawierają końcówkę typu kABSourceTypeSearchableMask
, co sugeruje, że trzeba wyszukiwać według nazwy, zamiast zwrotu " wszystkich ludzi ", ponieważ globalna lista adresów może zawierać tysiące ludzi, więc nie oczekiwałbym, że zwróci je wszystkie.
Aplikacja Kontakty pozwala wyszukiwać według nazwy i wyświetla tylko te, które pasują do siebie. Podobnie jak aplikacja Mail podczas wprowadzania tekstu w polu tekstowym "Do:".
I wypróbowany, a gdy przeszukujesz GAL, zachowuje się tak, jakby szukał książki adresowej kontaktów z wymiany innej niż GAL. Wątpię, aby ta funkcjonalność została wbudowana, ponieważ pozwoliłaby aplikacjom z uprawnieniami do kontaktów na pobranie całej listy członków organizacji. – ecsos