通过ContactsContract类获取电话号码的改变

Java代码   收藏代码
  1. String string = "";  
  2. super.onCreate(savedInstanceState);  
  3. ContentResolver cr = getContentResolver();  
  4. Cursor cursor = cr.query(ContactsContract.Contacts.CONTENT_URI, nullnullnullnull);  
  5. while (cursor.moveToNext())   
  6. {  
  7.     int nameFieldColumnIndex = cursor.getColumnIndex(PhoneLookup.DISPLAY_NAME);  
  8.     String contact = cursor.getString(nameFieldColumnIndex);  
  9.     string += contact + ":";  
  10.     String contactId = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID));  
  11.     Cursor phone = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,   
  12.             ContactsContract.CommonDataKinds.Phone.CONTACT_ID+"="+contactId, nullnull);  
  13.     while (phone.moveToNext())   
  14.     {  
  15.         int numberFieldColumnIndex = phone.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER);  
  16.         String strPhoneNumber = phone.getString(numberFieldColumnIndex);  
  17.         string += " " + strPhoneNumber;  
  18.     }  
  19.     string += "\n";  
  20.     phone.close();  
  21. }  
  22. cursor.close();  


可见,在2.0之后的版本中要获取手机号码就只能通过先取得联系人ID然后再取得联系人电话号码, 而且号码可能不止一个.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值