Подтвердить что ты не робот

Android edit contact

hi im пытается добавить номер телефона к существующему контакту на Android 2.1. В настоящее время я использую:

ContentValues values = new ContentValues();
values.put(Phone.RAW_CONTACT_ID,cursor.getColumnIndex(Phone.CONTACT_ID));
String selection = ContactsContract.Contacts.IN_VISIBLE_GROUP + " = '1'";
ContentResolver cr = getContentResolver();
Cursor cursor = cr.query(ContactsContract.Contacts.CONTENT_URI,null, selection, null,ContactsContract.Contacts.DISPLAY_NAME+" COLLATE LOCALIZED ASC");
if (cursor.getCount() > 0) {
    cursor.moveToPosition(oldcontactid);
    contactid = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID));
    values.put(Phone.RAW_CONTACT_ID,cursor.getColumnIndex(Phone.CONTACT_ID));
    if (Integer.parseInt(cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER))) > 0) {
        Cursor pCur = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,null,ContactsContract.CommonDataKinds.Phone.CONTACT_ID +" = ?",new String[]{contactid}, null);
        while (pCur.moveToNext()) {
            values.put(Phone.NUMBER,pCur.getString(pCur.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)));
            values.put(Phone.TYPE, Phone.TYPE_MOBILE);
        }
        pCur.close();
    }
}
Uri uri = getContentResolver().insert(Phone.CONTENT_URI, values);

но я получаю сообщение об ошибке:

java.lang.UnsupportedOperationException: Unknown uri: content://com.android.contacts/data/phones

как я могу это исправить?

спасибо за любую помощь, ng93

4b9b3361

Ответ 2

Вставить в Data.CONTENT_URI вместо Phone.CONTENT_URI также вставить столбец Data.MIMETYPE с помощью Phone.CONTENT_ITEM_TYPE.

Ответ 3

Установили ли вы правильные разрешения в AndroidManifest.xml? Насколько мне известно, доступ к личной информации (контактам) ограничен по умолчанию.

см. здесь для получения дополнительной информации о системе разрешений в android

Ответ 4

Вы также можете проверить установленные приложения и программную память. Мой Droid Eris отлично работал на контактах и ​​практически из любого приложения, знакомого с контактами.

До я прошел мимо какой-то точки загрузки памяти. Поддержка VZW 1-го уровня не помогла мне, я должен был настаивать на поддержке 2-го уровня. Наконец получил ответ от кого-то, кто знал его шпинат. Он сказал, что у меня слишком много приложений по телефону, и что это была известная проблема.
Тем не менее, я не сократил свой рабочий набор настолько, чтобы работать с контактом: - (

/s/BezantSoft