首页 > 系统 > Android > 正文

读写Android系统联系人

2019-11-07 23:38:47
字体:
来源:转载
供稿:网友
package com.itheima74.Operatecontacts;import android.content.ContentResolver;import android.content.ContentValues;import android.database.Cursor;import android.net.Uri;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.Toast;/** * 读写系统联系人 */public class MainActivity extends AppCompatActivity {    @Override    PRotected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);    }    // 点击按钮,读取系统联系人    public void click1(View view) {        // 1.先查raw_contacts表_id列查询共有几条联系人        ContentResolver contentResolver = getContentResolver();        Cursor cursor_raw_contacts = contentResolver.query(Uri.parse("content://com.android.contacts/raw_contacts"),                new String[]{"_id"}, null, null, null);        if (cursor_raw_contacts != null && cursor_raw_contacts.getCount() > 0) {            while (cursor_raw_contacts.moveToNext()) {                ContactsBean contactsBean = new ContactsBean();                String _id = cursor_raw_contacts.getString(0);                //2.再根据raw_contact_id(_id)查data表data1和mimetype列                Cursor cursor_data = contentResolver.query(Uri.parse("content://com.android.contacts/data"),                        new String[]{"data1", "mimetype"}, "raw_contact_id=?", new String[]{_id}, null);                if (cursor_data != null && cursor_data.getCount() > 0) {                    while (cursor_data.moveToNext()) {                        String data1 = cursor_data.getString(0);                        String mimetype = cursor_data.getString(1);                        if ("vnd.android.cursor.item/name".equals(mimetype)) {                            contactsBean.name = data1;                        } else if ("vnd.android.cursor.item/phone_v2".equals(mimetype)) {                            contactsBean.phone = data1;                        } else if ("vnd.android.cursor.item/email_v2".equals(mimetype)) {                            contactsBean.email = data1;                        }                    }                    System.out.println(contactsBean);                    cursor_data.close();                }            }            cursor_raw_contacts.close();        }    }    // 点击按钮,插入一条联系人    public void click2(View view) {        // 1.先查raw_contacts表_id列查询共有几条联系人,在原有的基础上_id加1        ContentResolver contentResolver = getContentResolver();        Cursor cursor_raw_contacts = contentResolver.query(Uri.parse("content://com.android.contacts/raw_contacts"),                new String[]{"_id"}, null, null, null);        int count = 0;// 定义一个变量,保存联系人个数        if (cursor_raw_contacts != null && cursor_raw_contacts.getCount() > 0) {            while (cursor_raw_contacts.moveToNext()) {                count++;            }            cursor_raw_contacts.close();        }        count = count + 1;// 在原有的基础上加1        // 插入一条数据        ContentValues values = new ContentValues();        values.put("_id", count);        contentResolver.insert(Uri.parse("content://com.android.contacts/raw_contacts"), values);        //2. 在data表中插入相应的数据        ContentValues nameValues = new ContentValues();        nameValues.put("raw_contact_id", count);        nameValues.put("mimetype", "vnd.android.cursor.item/name");        nameValues.put("data1", "张三");        contentResolver.insert(Uri.parse("content://com.android.contacts/data"), nameValues);        ContentValues phoneValues = new ContentValues();        phoneValues.put("raw_contact_id", count);        phoneValues.put("mimetype", "vnd.android.cursor.item/phone_v2");        phoneValues.put("data1", "120");        contentResolver.insert(Uri.parse("content://com.android.contacts/data"), phoneValues);        ContentValues emailValues = new ContentValues();        emailValues.put("raw_contact_id", count);        emailValues.put("mimetype", "vnd.android.cursor.item/email_v2");        emailValues.put("data1", "120@QQ.com");        contentResolver.insert(Uri.parse("content://com.android.contacts/data"), emailValues);        Toast.makeText(this, "插入成功", Toast.LENGTH_SHORT).show();    }}
package com.itheima74.operatecontacts;/** * Created by My on 2017/2/25. */class ContactsBean {    String name;    String phone;    String email;    @Override    public String toString() {        return "ContactsBean{" +                "name='" + name + '/'' +                ", phone='" + phone + '/'' +                ", email='" + email + '/'' +                '}';    }}
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表