diff options
| author | Danesh Mondegarian <daneshm90@gmail.com> | 2013-01-22 23:08:15 -0500 |
|---|---|---|
| committer | LorDClockaN <davor@losinj.com> | 2014-01-19 14:07:15 +0100 |
| commit | 813d484b66cc8efac16f64024e7163e8fd7b9a1b (patch) | |
| tree | 2b2a1db7e229b74ed137b14abf3ed796ba1be859 | |
| parent | d9cc327056ee2ae7b3dc5181c7f71198d18a7b00 (diff) | |
ContactsProvider : Add new projection columns for contact
http://review.cyanogenmod.org/#/c/29191/2 introduced new columns
to be used for projection, however SQLiteQueryBuilder's projectionmap
was not updated. This is required to avoid this error :
E/DatabaseUtils(12835): Writing exception to parcel
E/DatabaseUtils(12835): java.lang.IllegalArgumentException: Invalid column display_name
E/DatabaseUtils(12835): at android.database.sqlite.SQLiteQueryBuilder.computeProjection(SQLiteQueryBuilder.java:632)
E/DatabaseUtils(12835): at android.database.sqlite.SQLiteQueryBuilder.buildQuery(SQLiteQueryBuilder.java:447)
E/DatabaseUtils(12835): at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:393)
E/DatabaseUtils(12835): at com.android.providers.contacts.ContactsProvider2.query(ContactsProvider2.java:6016)
E/DatabaseUtils(12835): at com.android.providers.contacts.ContactsProvider2.queryLocal(ContactsProvider2.java:5992)
E/DatabaseUtils(12835): at com.android.providers.contacts.ContactsProvider2.query(ContactsProvider2.java:4780)
E/DatabaseUtils(12835): at android.content.ContentProvider$Transport.query(ContentProvider.java:189)
E/DatabaseUtils(12835): at android.content.ContentResolver.query(ContentResolver.java:372)
E/DatabaseUtils(12835): at android.content.ContentResolver.query(ContentResolver.java:315)
E/DatabaseUtils(12835): at com.android.vcard.VCardComposer.initInterCursorCreationPart(VCardComposer.java:440)
E/DatabaseUtils(12835): at com.android.vcard.VCardComposer.init(VCardComposer.java:399)
E/DatabaseUtils(12835): at com.android.vcard.VCardComposer.init(VCardComposer.java:346)
E/DatabaseUtils(12835): at com.android.providers.contacts.ContactsProvider2.outputRawContactsAsVCard(ContactsProvider2.java:7572)
E/DatabaseUtils(12835): at com.android.providers.contacts.ContactsProvider2.openAssetFileLocal(ContactsProvider2.java:7329)
E/DatabaseUtils(12835): at com.android.providers.contacts.ContactsProvider2.openAssetFile(ContactsProvider2.java:7128)
E/DatabaseUtils(12835): at android.content.ContentProvider.openTypedAssetFile(ContentProvider.java:937)
E/DatabaseUtils(12835): at android.content.ContentProvider$Transport.openTypedAssetFile(ContentProvider.java:268)
E/DatabaseUtils(12835): at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:283)
E/DatabaseUtils(12835): at android.os.Binder.execTransact(Binder.java:351)
E/DatabaseUtils(12835): at dalvik.system.NativeStart.run(Native Method)
Change-Id: I8ad094296a8a20b7c483b815510314dcbeb2e9ca
| -rw-r--r-- | src/com/android/providers/contacts/ContactsProvider2.java | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/com/android/providers/contacts/ContactsProvider2.java b/src/com/android/providers/contacts/ContactsProvider2.java index ffe908d4..fbfe73a8 100644 --- a/src/com/android/providers/contacts/ContactsProvider2.java +++ b/src/com/android/providers/contacts/ContactsProvider2.java @@ -775,6 +775,8 @@ public class ContactsProvider2 extends AbstractContactsProvider /** Contains just the contacts vCard columns */ private static final ProjectionMap sContactsVCardProjectionMap = ProjectionMap.builder() .add(Contacts._ID) + .add(Contacts.DISPLAY_NAME_PRIMARY) + .add(Contacts.DISPLAY_NAME_ALTERNATIVE) .add(OpenableColumns.DISPLAY_NAME, Contacts.DISPLAY_NAME + " || '.vcf'") .add(OpenableColumns.SIZE, "NULL") .build(); |
