Android联系人表格更新但未保存到SIM卡

时间:2013-02-12 00:47:54

标签: android android-contacts updates

我正在尝试更新与SIM卡上的联系人关联的电话号码。我可以更新数据表的行,但更改不会传播到SIM。更新后我将数据行转储出来; _ID仍然相同,电话(data1)col有新的电话号码。当我给手机通电时,该条目具有旧值。联系人的原始联系人号码已增加1.有关如何在SIM卡中保持更改的任何想法? (是的,我知道一些文档说不支持访问SIM卡。但是联系人应用程序可以这样做 - 应用程序必须有一种方法来更新SIM卡。)可能存在拼写错误 - 我必须(重新)键入手边的代码。

以下是我用来更新行的代码。

String rawId = "87"; // provided by caller; hardcoded here for brevity
String num = "212-222-3333";   // new phone #

ContentResolver cr = ...get actvity's resolver...

Uri uri = ContactsContract.Data.CONTENT_URI;

ContentValues cv = new ContentValues();
cv.put(ContactsContract.CommonDataKinds.Phone.Number, num);

String select = ContactsContract.Data.RAW_CONTACT_ID " + " = " + rawId + " and " +
    ContactsContract.Data.MIMETYPE + " = '" + 
        ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_ITEM + "'";
String[] selectArgs = {};

cr.update(uri, cv, select, selectArgs);

忽略了捕获异常和其他细节。

感谢您提供任何线索!

0 个答案:

没有答案