Welcome 微信登录

首页 / 操作系统 / Linux / Android使用Contact数据模型来批量插入联系人

使用Contact数据模型来批量插入联系人主要需要contact数据模型的以下两文件:com.Android.contacts.model下的:EntitySet.javaEntityDelta.java以上文件的源码地址可以在http://hi-android.info/src/找到。EntitySet在Android 4.0中已经被改名为EntityDeltaList.我自己的代码在MainActivity.java,DialogResolver.java和ContactPersistTask.java。注意:需要在AndroidManifest.xml加入写contacts的权限。写contacts的权限为:<uses-permission android:name="android.permission.READ_CONTACTS" />读contacts的权限为: <uses-permission android:name="android.permission.WRITE_CONTACTS" />文件1 MainActivity.java文件 package com.teleca.robin.Contact;import android.app.Activity;import android.app.Dialog;import android.content.Context;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;public class MainActivity extends Activity implements DialogResolver{final static String TAG="robin";    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        Button button = (Button) findViewById(R.id.Button01);        OnClickListener listener = new OnClickListener() {         public void onClick(View v) {         doAddAction();         }        };        button.setOnClickListener(listener);    editText=(EditText)findViewById(R.id.editText);    editText.setText("100");    }    EditText editText;    void doAddAction() {
    String content=editText.getText().toString();    int count=0;    try{    count=Integer.parseInt(content);    }catch(NumberFormatException e)    {    Toast.makeText(this, "please input a Number for Contacts count!",    Toast.LENGTH_SHORT).show();    }        final ContactPersistTask task = new ContactPersistTask(this);        task.execute(count);
    }    public void showDialog(Dialog dialog)    {    dialog.show();    }    public void dismissDialog(Dialog dialog)    {    dialog.dismiss();    }    public Activity getActivity(){    return this;    }}文件2DialogResolver.java文件package com.teleca.robin.Contact;
import android.app.Dialog;
public interface DialogResolver{ public void showDialog(Dialog dialog); public void dismissDialog(Dialog dialog);}注意:对于任何实现了DialogResolver的类,要求该类必须是Activity。文件3布局文件main.xml文件<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    ><TextView      android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:text="@string/hello"    />    <EditText      android:id="@+id/editText"    android:layout_width="100dp"     android:layout_height="wrap_content"    /> <Button android:text="@string/add" android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button></LinearLayout>文件4strings.xml文件<?xml version="1.0" encoding="utf-8"?><resources>    <string name="hello">please input the number to add for contact!</string>    <string name="app_name">ContactGenerator</string>    <string name="add">add</string>    <string name="insert_title">insert contact</string>    <string name="insert_tip">waiting</string></resources>