【发布时间】:2013-12-04 12:18:51
【问题描述】:
我知道如何以编程方式在联系人中添加/编辑电子邮件地址,但我不知道如何在联系人中检索/修改 SIP_address/Internet_call,我已经阅读了许多基于它的文档,包括 Modifying contact information。请帮我实现这个
【问题讨论】:
标签: android android-contacts android-cursor
我知道如何以编程方式在联系人中添加/编辑电子邮件地址,但我不知道如何在联系人中检索/修改 SIP_address/Internet_call,我已经阅读了许多基于它的文档,包括 Modifying contact information。请帮我实现这个
【问题讨论】:
标签: android android-contacts android-cursor
更改 Sip 地址与更改联系人的电子邮件地址完全相同。只需使用ContactsContract.CommonDataKinds.SipAddress 而不是ContactsContract.CommonDataKinds.Email。
咖啡前的小例子:
import java.util.ArrayList;
import android.content.ContentProviderOperation;
import android.provider.ContactsContract;
import android.provider.ContactsContract.Data;
import android.provider.ContactsContract.CommonDataKinds.SipAddress;
//[...]
private String mSipAddress = "cecin\'estpasunesipaddress";
//[...]
try {
ArrayList<ContentProviderOperation> ops = new ArrayList<ContentProviderOperation>();
ops.add(ContentProviderOperation.newUpdate(Data.CONTENT_URI)
.withSelection(Data.RAW_CONTACT_ID + " = ?", new String[] {mRawContactId})
.withSelection(Data._ID + " = ?", new String[] {mDataId})
.withValue(Data.MIMETYPE, SipAddress.CONTENT_ITEM_TYPE)
.withValue(Data.DATA1, mSipAddress)
.withValue(SipAddress.TYPE, SipAddress.TYPE_HOME)
.build());
getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
}
//[...]
有关如何获取此处未声明的字段的示例,请参阅this GitHub 存储库。我是从this 回答中得到的。 Relevant documentation.
【讨论】: