package com.example.androidtest;import android.os.Bundle;import android.app.ListActivity;import android.view.Menu;import android.net.Uri;import android.provider.ContactsContract;import android.database.Cursor;import android.widget.SimpleCursorAdapter;import android.util.Log;import android.content.ContentProvider;public class AndroidTest extends ListActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_android_test);Uri allContacts = ContactsContract.Contacts.CONTENT_URI;Cursor c = getContentResolver().query(allContacts, null, null, null, null);startManagingCursor(c);String[] columns = new String[]{ContactsContract.Contacts._ID, ContactsContract.Contacts.DISPLAY_NAME};int[] views = new int[]{R.id.contactName, R.id.contactID};SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.activity_android_test, c, columns, views);this.setListAdapter(adapter);PrintContacts(c);}private void PrintContacts(Cursor c){if (c.moveToFirst()) {do {String contactId = c.getString(c.getColumnIndex(ContactsContract.Contacts._ID));String contactDisplayName = c.getString(c.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));Log.v("Content Providers", contactId + "," + contactDisplayName);int hasPhone = c.getInt(c.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER));if (hasPhone == 1) {Cursor phoneCursor = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = " + contactId, null, null);while (phoneCursor.moveToNext()) {Log.v("Content Providers", phoneCursor.getString(phoneCursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)));}phoneCursor.close();}} while (c.moveToNext());}}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.android_test, menu);return true;}}

<?xml version="1.0" encoding="utf-8"?>                 

需要添加权限:

            



更多相关文章

  1. 利用ContentProvider的添加数据
  2. Android(安卓)监听电话状态
  3. RecyclerView添加行间距
  4. 异常ExceptionInInitializerError解决方案
  5. Android(安卓)程序奔溃常见问题汇总
  6. Android底层知识Window和WindowManager深入分析
  7. Android—检测权限并申请
  8. android中添加通过内容提供者添加联系人
  9. Android(安卓)图片添加水印

随机推荐

  1. 在 WebView 中获取当前网络状态(Wi-Fi 3G
  2. Android(安卓)已申请权限仍然提示 open f
  3. android客户端使用ssl连接mqtt服务器(单向
  4. Android(安卓)OutOfMemory 的思考
  5. Android(安卓)- 第二章 Activity 探究
  6. Android中如何开启变态混淆防止被反编译
  7. android native内存泄漏检测原理
  8. 【黑马Android】(19)response下载文件/验
  9. 安卓Android面试题汇总
  10. [置顶] Android(安卓)Paint之 setXfermod