Как добавить новые поля в контакт? - PullRequest
11 голосов
/ 29 апреля 2010

Я хочу добавить настраиваемое поле в контент-провайдер ContactsContract. Я пытаюсь создать приложение Voip и хотел бы добавить к нему поле SIP-адрес (имя @ домен). Какой тип MIME мне нужно будет связать с ним? Также я хочу добавить поле группового адреса, в котором будет список групповых адресов (имя @ домен, имя @ домен, ...). С каким типом MIME мне придется связываться с этим типом поля.

Я также хочу добавить настраиваемые поля в историю вызовов, такие как идентификатор сеанса и поле адреса SIP (имя @ домен). Как настроить историю звонков?

Было бы здорово, если бы кто-нибудь мог привести мне пример.

1 Ответ

6 голосов
/ 29 апреля 2010

Вы должны создать свой собственный тип пантомимы для них.

Вот пример, который сохраняет логическое значение как мой пользовательский тип пантомимы для контактов. Использует последний SDK 2.1

public void saveFormality() {
        try {
            ContentValues values = new ContentValues();
            values.put(Data.DATA1, this.getFormality() ? "1" : "0");
            int mod = ctx.getContentResolver().update(
                    Data.CONTENT_URI,
                    values,
                    Data.CONTACT_ID + "=" + this.getId() + " AND "
                            + Data.MIMETYPE + "= '"
                            + clsContacts.FORMALITY_MIMETYPE + "'", null);

            if (mod == 0) {
                values.put(Data.CONTACT_ID, this.getId());
                values.put(Data.MIMETYPE, clsContacts.FORMALITY_MIMETYPE);
                ctx.getContentResolver().insert(Data.CONTENT_URI, values);
            }
        } catch (Exception e) {
            Log.v(TAG(), "saveFormality failed");
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...