【问题标题】:how to add an existing contact to the "Phone contacts" Account如何将现有联系人添加到“电话联系人”帐户
【发布时间】:2012-06-17 13:38:27
【问题描述】:

我正在使用此代码向设备添加联系人

long Contact_Id = 100;
ContentValues pCV =new ContentValues();
pCV.put(Contacts.People.NAME, "test");
pCV.put(ContactsContract.Contacts._ID, Contact_Id);
Uri newContactUri = insertContentValues(cResolver,
                    Contacts.People.CONTENT_URI, pCV);

我想将此联系人添加到某个帐户。我在下面使用此代码

ContentResolver cResolver = context.getContentResolver();
cResolver.insert(uri, ContactsContract.RawContacts.CONTENT_URI,
                        getAccountType()); 

public ContentValues getAccountType() {
    ContentValues cv = new ContentValues();  
    cv.put(ContactsContract.RawContacts.ACCOUNT_TYPE,  "com.sonyericsson.localcontacts");
    cv.put(ContactsContract.RawContacts.ACCOUNT_NAME, "Phone contacts");
    return cv;
}

此代码实际上是在“电话联系人”帐户中添加一个新联系人。但我想将我在上面添加的联系人(“测试”)添加到“电话联系人”中。 我该怎么做?

【问题讨论】:

    标签: android contacts rawcontacts


    【解决方案1】:

    经过搜索,我发现将联系人插入本地电话联系人的最佳方法是将ACCOUNT_TYPEACCOUNT_NAME 分配给null 看看这个Link

    【讨论】:

    • 我不同意,请参阅link我的评论
    【解决方案2】:

    您可以根据自己的选择/要求尝试这两种解决方案。两者都运行良好

    添加联系人打开直接编辑活动

        try {
            Intent addContactIntent = new Intent(Intent.ACTION_INSERT);
            addContactIntent.setType(ContactsContract.Contacts.CONTENT_TYPE);
            addContactIntent.putExtra(ContactsContract.Intents.Insert.PHONE, number);
            addContactIntent.putExtra("finishActivityOnSaveCompleted", true);
            context.startActivity(addContactIntent);
        } catch (Exception e) {
            e.printStackTrace();
        }
    

    创建联系人或将联系人添加到现有联系人的选项

     try {
            Intent i = new Intent(Intent.ACTION_INSERT_OR_EDIT);
            i.setType(ContactsContract.Contacts.CONTENT_ITEM_TYPE);
            //  i.putExtra(ContactsContract.Intents.Insert.NAME, "TESTTEST");
            i.putExtra(ContactsContract.Intents.Insert.PHONE, number);
            context.startActivity(i);
        } catch (Exception e) {
            e.printStackTrace();
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-05
      • 1970-01-01
      • 1970-01-01
      • 2017-12-01
      • 1970-01-01
      相关资源
      最近更新 更多