3


The question I'm asking have already been asked a number of times on this site (links to the previous threads are below my question).

When working with iOS AddressBook, and trying to get Exchange GAL address book, the type name returns Nil. The code that I use (and suggested in all previous threads) is:

CFStringRef sourceName = (CFStringRef)ABRecordCopyValue(source, kABSourceNameProperty);

This basically means that if there are more than one Exchange address book mapped on the device (and there is no limitation to do so...), then there is no way to know which one is the one you need.

The question is if someone has found any workaround for this issue?

Thanks in advance!

Links to previous threads:

  1. ABAddressBook ABSource and ABSourceType
  2. iPhone: How do you get the names of all the address books on the iPhone?
  3. ABSource name returning nil
  4. AddressBook: how to get names of different Exchange sources
  5. Read name of ABSource
Community
  • 1
  • 1
vvvlad
  • 368
  • 1
  • 12

1 Answers1

2

First of all: We used an official Apple Support Request to ask if it is possible to distinguish between Exchange Servers and the simply answer was: It is not! :(

I opened a Bug Report about this issue.

If you are developing for a business customer it might be an option to have their IT pre-install the wanted exchange and prevent the user from adding additional exchange servers via policy.

cschuff
  • 5,192
  • 3
  • 31
  • 51
  • The order the Exchange servers are added may be significant- if IT added the required one first, would that remain the first one that will be found when stepping through the address books in your code? – Peter Johnson Oct 23 '12 at 12:09
  • At least anecdotally, it does seem that the numerical ID of the source records increments chronologically as you add/remove sources. – Danny Apr 02 '13 at 15:48
  • Any fix for this issue in iOS 7? – vvvlad Sep 25 '13 at 08:56