如何向联系人添加新的字段?

我想将一个自定义字段添加到ContactsContract内容提供程序。 我正在尝试构build一个Voip应用程序,并希望为其添加一个SIP地址(name @ domain)字段。 我需要什么样的MIMEtypes来关联它? 另外我想添加一个组地址字段,其中将有一个组地址列表(名称域,名称@域,…)。 我将不得不与这种types的字段关联。

我还希望将自定义字段添加到“呼叫历史logging”中,如会话ID和SIP地址(名称@域)字段。 我如何定制通话logging?

如果有人能给我一个例子,那将是很棒的。

Solutions Collecting From Web of "如何向联系人添加新的字段?"

你必须为这些创build你自己的MIMEtypes。

这是一个将我的自定义MIMEtypes的布尔值保存到联系人的示例。 它使用最新的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"); } }