2010-04-28 33 views
10

我想將一個自定義字段添加到ContactsContract內容提供者。我正在嘗試構建一個Voip應用程序,並希望爲其添加一個SIP地址(名稱@域)字段。我需要什麼樣的MIME類型與它關聯? 另外我想添加一個組地址字段,它將有一個組地址(名稱@域,名稱@域,...)的列表。我必須將這種類型的字段與這種MIME類型聯繫起來。如何向聯繫人添加新字段?

我還希望爲呼叫歷史添加自定義字段,如會話ID和SIP地址(名稱@域)字段。我如何定製通話記錄?

如果有人能給我一個例子,那將會很棒。

回答

6

你必須爲這些創建你自己的MIME類型。

這是一個將布爾值作爲我的自定義MIME類型保存到聯繫人的示例。它使用最新的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"); 
     } 
    } 
+0

謝謝。這回答瞭如何將自定義MIME類型添加到ContactsContract內容提供者。有沒有辦法將自定義字段添加到呼叫日誌數據庫? – 2010-04-28 23:47:54

+0

我不知道。不要忘記回覆答案。 – Pentium10 2010-04-29 10:26:27

+1

有沒有辦法利用說DATA14和DATA15? – Joset 2011-07-06 08:03:25

相關問題