iOS Feature Wish: Contact Provider Extensions

For a while now, there’s been a major feature of iOS Contacts that I’ve felt has been sorely lacking, and that’s the ability for third-parties to provide their own contact card data. Here’s what I mean…

We live in a world where we have a whole bunch of different social circles that we run in, and it seems like almost every circle has a different way of keeping track of how to communicate with those people. I’ve got Twitter, LinkedIn, Snapchat, and Facebook. I’ve got a company directory, my nextdoor.com account, and even an app for congregants of a nearby church.

None of these people show up in Contacts.app, and that really bothers me.

Sometimes I want to call someone, but I can’t just go to the phone app and start typing their name. I have to remember how I know them, go to the relevant social networking app, hope my credentials are still valid, find their info, and hope there’s a phone number in there.

Sometimes I want to text or email someone, but I can’t just go to Messages or Mail and start typing their name. I have to remember how I know them, go to the relevant social networking app, hope my credentials are still valid, find their info, and hope there’s a phone number or email address in there.

I really wish iOS offered a way for these apps (Facebook, Next Door, Twitter, LinkedIn, etc) to “donate” their contact information to the system database in a non-permanent way. (By “non-permanent” I mean “don’t just dump it in to my iCloud contacts and call it good”; deleting the app would cause that info to disappear, and the app could update it on-demand) There would need to be some pretty intelligent merging that happens, but generally it’s pretty safe to assume that an individual with a certain phone number and email address is probably the same individual as another with the same phone number and email address. You’d also have to consider how to handle apps that provide unboundedly-large data sets (like the corporate directory for a 50,000+ employee company). But, these are solvable problems.

Functionality like this would also enable what I consider to be the “holy grail” of contact services: a service where I can expose a certain subset of my contact information to specific groups of people. Facebook kind of lets you do this with your profile, but also carries a whole lot of extra baggage that a lot of people find undesirable.

In my opinion, the days of manually filling out and sharing vCards belong firmly in the past, yet that is just about the “state of the art” today. We have the technology to make far superior services, but just need a way to integrate that with the standard iOS (and macOS) experience.

Disclaimer

Despite my recently-ended employment at Apple, I have zero idea of whether they have any plans to do this.

Also, I did file a bug report about this, but I do not have the bug number anymore. Please file your own copy! 🙏 Update: it’s been verified that my original bug report about this is rdar://17750541. Go forth and dupe!


Related️️ Posts️

The Missing Accessory
Building a Cross-Platform Framework
The Laws of Core Data
A Better MVC, Part 5: An Evolution
If iPads were meant for kids
Apple Networking Feedback
Swift Protocols Wishlist
Simplifying Swift framework development
Reading your own entitlements
A Better MVC, Part 4: Future Directions
A Better MVC, Part 3: Fixing Massive View Controller
A Better MVC, Part 2: Fixing Encapsulation
A Better MVC, Part 1: The Problems
Keynote's awesome Outline Mode
Every beginning has an end
Changes
Incrementing Build Numbers in Xcode