通过内容提供者写联系人

1、写联系人权限

 <uses-permission android:name="android.permission.READ_CONTACTS"/>
    <uses-permission android:name="android.permission.WRITE_CONTACTS"/>

2、java代码

 1 package com.itheimazyh.writecontact;
 2 
 3 import android.net.Uri;
 4 import android.os.Bundle;
 5 import android.app.Activity;
 6 import android.content.ContentResolver;
 7 import android.content.ContentValues;
 8 import android.database.Cursor;
 9 import android.view.Menu;
10 import android.view.View;
11 import android.view.View.OnClickListener;
12 import android.widget.Button;
13 
14 public class MainActivity extends Activity {
15 
16     @Override
17     protected void onCreate(Bundle savedInstanceState) {
18         super.onCreate(savedInstanceState);
19         setContentView(R.layout.activity_main);
20         
21         Button wr_contact = (Button) findViewById(R.id.wr_contact);
22         wr_contact.setOnClickListener(new OnClickListener() {
23             
24             @Override
25             public void onClick(View v) {
26                 // TODO Auto-generated method stub
27                 writeContact();
28             }
29         });
30     }
31 
32     public void writeContact(){
33         Uri uri = Uri.parse("content://com.android.contacts/raw_contacts");
34         Uri data_uri = Uri.parse("content://com.android.contacts/data");
35         
36         ContentResolver resolver = getContentResolver();
37         
38         Cursor cursor = resolver.query(uri, null, null, null, null);
39         cursor.moveToLast();
40         
41         int lastId = cursor.getInt(cursor.getColumnIndex("_id"));
42         //System.out.println(lastId);
43         
44         int newId = lastId + 1;
45         ContentValues values = new ContentValues();
46         values.put("contact_id", newId);
47         resolver.insert(uri, values);
48         
49         ContentValues phoneValues = new ContentValues();
50         phoneValues.put("data1", "159xxxxx");
51         phoneValues.put("mimetype", "vnd.android.cursor.item/phone_v2");
52         phoneValues.put("raw_contact_id", newId);
53         resolver.insert(data_uri, phoneValues);
54         
55         ContentValues nameValues = new ContentValues();
56         nameValues.put("data1", "zhongyinghe");
57         nameValues.put("mimetype", "vnd.android.cursor.item/name");
58         nameValues.put("raw_contact_id", newId);
59         resolver.insert(data_uri, nameValues);
60         
61         ContentValues emailValues = new ContentValues();
62         emailValues.put("data1", "642xxxxxxx@qq.com");
63         emailValues.put("mimetype", "vnd.android.cursor.item/email_v2");
64         emailValues.put("raw_contact_id", newId);
65         resolver.insert(data_uri, emailValues);
66     }
67 }

 

posted @ 2016-03-23 15:36  zhongyinghe  阅读(233)  评论(0)    收藏  举报