Adding a column to Contacts, which will be used as an additional "soft" identity.

The main consumer of this feature is shortcuts.

The LOOKUP KEY column will contain an encoded concatenation of the contact's row id
as well as sync_ids of all constituent raw contacts. It goes with the "contacts/lookup/*/#" URI.

When we get such a URI, we will first try to load the
contact with the specified _id and lookup_key.  If we cannot find the contact
that way, we will go scout for the contact that contains most of the sync_ids
we found in the lookup key.

We will need to make sure that the contact picker returns the lookup-style URIs.
1 file changed