热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

Android编程基于Contacts读取联系人的方法(附demo源码)

这篇文章主要介绍了Android编程基于Contacts读取联系人的方法,实例分析了Contacts读取的实现方法及权限设置方法,并附带了完整实例供读者下载参考,需要的朋友可以参考下

本文实例讲述了Android编程基于Contacts读取联系人的方法。分享给大家供大家参考,具体如下:

Android Contacts简介:

这里介绍安卓通讯录数据库。包括Android使用Contacts访问SQLite的基本知识,并了解Android SQLite和Contacts的更多信息。谷歌改变了从版本1到版本2的Contacts数据库。下面加以简单介绍。

Contacts 读取代码:

package com.homer.phone; 
import java.util.ArrayList; 
import java.util.HashMap; 
import android.app.Activity; 
import android.database.Cursor; 
import android.os.Bundle; 
import android.provider.ContactsContract; 
import android.provider.ContactsContract.CommonDataKinds.Phone; 
import android.widget.ListView; 
import android.widget.SimpleAdapter; 
public class phoneRead extends Activity { 
 @Override 
 public void onCreate(Bundle savedInstanceState){ 
  super.onCreate(savedInstanceState); 
  showListView(); 
 } 
 private void showListView(){ 
  ListView listView = new ListView(this); 
  ArrayList> list = getPeopleInPhone2(); 
  SimpleAdapter adapter = new SimpleAdapter( 
         this, 
         list, 
         android.R.layout.simple_list_item_2, 
         new String[] {"peopleName", "phoneNum"}, 
         new int[]{android.R.id.text1, android.R.id.text2} 
        ); 
  listView.setAdapter(adapter); 
  setContentView(listView); 
 } 
 private ArrayList> getPeopleInPhone2(){ 
  ArrayList> list = new ArrayList>(); 
  Cursor cursor = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null);  // 获取手机联系人 
  while (cursor.moveToNext()) { 
   HashMap map = new HashMap(); 
   int indexPeopleName = cursor.getColumnIndex(Phone.DISPLAY_NAME); // people name 
   int indexPhOneNum= cursor.getColumnIndex(Phone.NUMBER);   // phone number 
   String strPeopleName = cursor.getString(indexPeopleName); 
   String strPhOneNum= cursor.getString(indexPhoneNum); 
   map.put("peopleName", strPeopleName); 
   map.put("phoneNum", strPhoneNum); 
   list.add(map); 
  } 
  if(!cursor.isClosed()){ 
   cursor.close(); 
   cursor = null; 
  } 
  return list; 
 } 
}

AndroidManifest.xml 权限

记得在AndroidManifest.xml中加入android.permission.READ_CONTACTS这个permission

代码如下:

运行结果:

 

示例代码点击此处本站下载。

希望本文所述对大家Android程序设计有所帮助。


推荐阅读
  • 例子如Table表有性别字段,1代表男2代表女、3代表中性、还有没填就代表未说明selectid,decode(sex,'1','男', ... [详细]
  • Android的四种启动模式
     对Android的启动模式不是很了解,这里记录下简单的理解内容以便日后查看。 Androi的四种启动模式分别为:standard,singleTop,singleTask,sing ... [详细]
  • 一、使用ContentProvider(内容提供者)共享数据ContentProvider在android中的作用是对外共享数据,也就是说 ... [详细]
  • 如何理解MyBatis动态SQL
    本篇内容主要讲解“如何理解MyBatis动态SQL”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何理解M ... [详细]
  • 一、在androidStudio中实现tabs比较简单,新建项目就可以选择tabs模板进行创建,默认实现tabs功能:直接运行项目就可以看到效果:可以说非常简单,但是我们在实际开发 ... [详细]
  • apk简单介绍APK的组成apk安装流程app的启动过程apk打包流程AIDLAIDL介绍为什么要设计这门语言它有哪些语法?默认支持的数据类型包括什么是apk打包流程 ... [详细]
  • Java工作流引擎关于数据加密流程(MD5数据加密防篡改)
    关键字:驰骋工作流程快速开发平台工作流程管理系统工作流引擎asp.net工作流引擎java工作流引擎.开发者表单拖拽式表单工作流系统流程数据加密md5数据保密流程数据防篡改软加密适 ... [详细]
  • Adapter相当于C(Controller,控制器),listView相当于V(View,视图)用于显示数据为ListView提供数据的List,数组或数据库相当于MVC模式中的 ... [详细]
  • 问题说明最近看到Spring事务,在学习过程中遇到一个很苦恼问题搭建好Spring的启动环境后出现了一点小问题在启动时候却出现[java.lang.NullPointerExcep ... [详细]
  • 第一部分:TSqlTop有两种用法1,限制查询结果集返回的行数或总行数的百分比。当将TOP与ORDERBY子句结合使用时,结果集限制为前N个已排序行;否则,以未定义的顺序返回前N个 ... [详细]
  • Android开发之Notification(实现消息弹窗、提示音以及点击事件)
    文章目录通知管理器通知渠道通知发送通知更多效果添加点击事件取消消息通知管理器通知管理器(NotificationManager)类是一个通知管理器&# ... [详细]
  • 以SOA服务为导向的信息系统构建是通过有计划地构建信息系统时,一种简单而有柔性的方法,就是组件化与服务导向架构。过去的信息系统,是在使用者需要新功能时才开发的,也就是响应不同时 ... [详细]
  • 大数据分析Python有哪些爬虫框架
    一、ScrapyScrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。。用 ... [详细]
  • nvmw安装,用于控制node版本;
    之前一直使用的是nodev2.2.0版本,挺说新版本的node解决了npm安装插件产生文件夹结构过深的问题,所以就想更新试试;上网一看才发现,尼玛的node已经到了6.+版本了,好 ... [详细]
  • hibernate映射组件映射
    在Hibernate中,component是某个实体的逻辑组成部分,它与实体的根本区别是没有oid(对象标识符),compo ... [详细]
author-avatar
除了祝福我能怎么办_218
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有