Android2.1以前版本插入联系人

给出这段代码:
ContentValues values = new ContentValues();
              values.put(People.NAME, "contacts_" + i);
Uri uri = getContentResolver().insert(People.CONTENT_URI,values);
Uri numberUri = Uri.withAppendedPath(uri,People.Phones.CONTENT_DIRECTORY);
values.clear();
values.put(People.NUMBER, "" + i + p);
getContentResolver().insert(numberUri, values);


下面这段是2.1之后的插入联系人的代码片段:
public void insertContact(String name, String phone) {
		System.out.println("name---------------->" + name);
		ContentValues values = new ContentValues();
		// insert a null value
		Uri rawContactUri = getContentResolver().insert(
				RawContacts.CONTENT_URI, values);
		long rawContactsId = ContentUris.parseId(rawContactUri);
		// 往刚才的空记录中插入姓名
		values.clear();
		values.put(StructuredName.RAW_CONTACT_ID, rawContactsId);
		values.put(Data.MIMETYPE, StructuredName.CONTENT_ITEM_TYPE);
		values.put(StructuredName.DISPLAY_NAME, name);
		getContentResolver().insert(Data.CONTENT_URI, values);
		// 插入电话
		values.clear();
		values.put(Phone.RAW_CONTACT_ID, rawContactsId);
		values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);
		values.put(Phone.NUMBER, phone);
		getContentResolver().insert(Data.CONTENT_URI, values);
	}


其实本人看这段代码都还有点头晕,怎么感觉就是没以前那么明了了,估计是功能增强了吧:)

最后在提醒下:
权限问题不能忘记:
<uses-permission android:name="android.permission.WRITE_CONTACTS" />

你可能感兴趣的:(android)