我正在尝试向现有联系人添加新号码(或电子邮件或网站),但代码效果不佳。代码如下:
int rowId = cursor1.getInt(cursor1
.getColumnIndex(ContactsContract.RawContacts._ID));
ContentValues contentValues = new ContentValues();
contentValues.put(ContactsContract.Data.RAW_CONTACT_ID, rowId);
contentValues.put(ContactsContract.Data.MIMETYPE,
ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE);
contentValues.put(ContactsContract.CommonDataKinds.Phone.NUMBER,
"45435345");
contentValues.put(ContactsContract.CommonDataKinds.Phone.TYPE,
Phone.TYPE_HOME);
ops.add(ContentProviderOperation
.newInsert(ContactsContract.Data.CONTENT_URI)
.withValues(contentValues).build());
当代码运行时,没有错误,也没有任何变化。我很郁闷。任何帮助都会救我!!!
答案 0 :(得分:0)
也许你需要这两个权限:
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
也许你需要使用ContentResolver
而不是ContentValues。
答案 1 :(得分:0)
使用此代码在手机Contatcs中插入New Contatct:
Intent intent = new Intent(ContactsContract.Intents.SHOW_OR_CREATE_CONTACT, Uri.parse("tel:" + currentNum.getText())); //currentNum is my TextView, you can replace it with the number directly such as Uri.parse("tel:1293827")
intent.putExtra(ContactsContract.Intents.EXTRA_FORCE_CREATE, true); //skips the dialog box that asks the user to confirm creation of contacts
startActivity(intent);
享受您的代码:) -