Android通过ContentProvider取得电话本的数据

ContentProvider为存储和获取数据提供了统一的接口。ContentProvide对数据进行封装,不用关心数据存储的细节。使用表的形式来组织数据。

10年的疏勒网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。网络营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整疏勒建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联公司从事“疏勒网站设计”,“疏勒网站推广”以来,每个客户项目都认真落实执行。

这里介绍通过ContentProvider取得电话本的数据的方法,先通过getContentResolver方法来取得一个ContentResolver对象,然后通过其query方法查询出符合标准的电话本记录,最后将这些数据都显示在一个TextView中即可。

 
 
  1. public class Activity01 extends Activity 
  2.     public void onCreate(Bundle savedInstanceState){ 
  3.         TextView tv = new TextView(this); 
  4.         String string = ""; 
  5.         super.onCreate(savedInstanceState); 
  6.         //得到ContentResolver 对象 
  7.         ContentResolver cr = getContentResolver(); 
  8.         //取得电话本中开始一项的光标 
  9.         Cursor cursor = cr.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null); 
  10.         //向下移动光标 
  11.         while(cursor.moveToNext()){ 
  12.             //取得联系人名字 
  13.             int nameFieldColumnIndex = cursor.getColumnIndex(PhoneLookup.DISPLAY_NAME); 
  14.             String contact = cursor.getString(nameFieldColumnIndex); 
  15.             //取得电话号码 
  16.             int numberFieldColumnIndex = cursor.getColumnIndex(PhoneLookup.NUMBER); 
  17.             String number = cursor.getString(numberFieldColumnIndex); 
  18.             string += (contact+":"+number+"\n"); 
  19.         } 
  20.          cursor.close(); 
  21.         //设置TextView 显示的内容 
  22.         tv.setText(string); 
  23.         //显示到屏幕 
  24.         setContentView(tv); 
  25.     } 
  26. }  

TextView设置中的代码如下:

 
 
  1. Android:name="android.permission.READ_CONTACTS"> 
  2.  

分享文章:Android通过ContentProvider取得电话本的数据
网页URL:http://www.shufengxianlan.com/qtweb/news15/495615.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联