获取android手机通讯录 SIM卡

通讯录上的信息,存储在两个地方,一个是

SIM

卡,一个是手机本地,

 

首先是手机本地:

Cursor cursor = 

getContentResolver().query(People.CONTENT_URI, null, 

null, null, null); 

while (cursor.moveToNext()) { 

ContactInfo cci = new ContactInfo(); 

//

取得联系人名字

 

int nameFieldColumnIndex = cursor.getColumnIndex(People.NAME); 

cci.contactName = cursor.getString(nameFieldColumnIndex); 

//

取得电话号码

 

int numberFieldColumnIndex = cursor.getColumnIndex(People.NUMBER); 

cci.userNumber = cursor.getString(numberFieldColumnIndex); 

cci.userNumber = GetNumber(cci.userNumber); 

cci.isChecked = false; 

if (IsUserNumber(cci.userNumber)) { 

if (!IsContain(contactList, cci.userNumber)) { 

if(IsAlreadyCheck(wNumStr, cci.userNumber)){ 

cci.isChecked = true; 

numberStr += "," + cci.userNumber; 

contactList.add(cci); 

//Log.i("eoe", "*********"+cci.userNumber); 

cursor.close(); 

下面是获取

SIM

卡:

 

//

SIM

卡中取号

 

private void GetSimContact(String add){ 

//

读取

SIM

卡手机号

,

有两种可能

:content://icc/adn

content://sim/adn 

try { 

Intent intent = new Intent(); 

intent.setData(Uri.parse(add)); 

Uri uri = intent.getData(); 

mCursor = getContentResolver().query(uri, null, null, null, null); 

if (mCursor != null) { 

while (mCursor.moveToNext()) { 

ContactInfo sci = new ContactInfo(); 

// 

取得联系人名字

 

int nameFieldColumnIndex = mCursor.getColumnIndex("name"); 

sci.contactName = mCursor.getString(nameFieldColumnIndex); 

// 

取得电话号码

 

int numberFieldColumnIndex = mCursor 

.getColumnIndex("number"); 

sci.userNumber = mCursor.getString(numberFieldColumnIndex); 

sci.userNumber = GetNumber(sci.userNumber); 

sci.isChecked = false; 

 

if (IsUserNumber(sci.userNumber)) { 

if (!IsContain(contactList, sci.userNumber)) { 

if(IsAlreadyCheck(wNumStr, sci.userNumber)){ 

sci.isChecked = true; 

numberStr += "," + sci.userNumber; 

contactList.add(sci); 

//Log.i("eoe", "*********"+sci.userNumber); 

mCursor.close(); 

} catch (Exception e) { 

Log.i("eoe", e.toString()); 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值