读取手机联系人信息

来源:互联网 发布:linux版启动器 编辑:程序博客网 时间:2024/06/10 07:37

新建一个Contacts项目
修改actiity_main.xml文档

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context=".MainActivity" >    <ListView        android:id="@+id/contacts"        android:layout_width="match_parent"        android:layout_height="match_parent">    </ListView></RelativeLayout>

修改mainactivity中的代码

public class MainActivity extends Activity {ListView contactsView;ArrayAdapter<String> adapter;List<String> contactsList=new ArrayList<String>();    @Override     protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        readContacts();         contactsView=(ListView) findViewById(R.id.contacts);        adapter=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,contactsList);        contactsView.setAdapter(adapter);    }private void readContacts(){    Cursor cursor=null;    try {        //查询联系人数据        cursor=getContentResolver().query(                ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null);        while (cursor.moveToNext()) {            //获取联系人姓名            String displayName=cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Photo.DISPLAY_NAME));            //获取联系人手机号            String number=cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));            contactsList.add(displayName+"\n"+number);        }    } catch (Exception e) {        // TODO: handle exception        e.printStackTrace();    }    finally{if(cursor !=null){cursor.close();}}}    @Override    public boolean onCreateOptionsMenu(Menu menu) {        // Inflate the menu; this adds items to the action bar if it is present.        getMenuInflater().inflate(R.menu.main, menu);        return true;    }}

在配置文档中添加权限

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