public class GetContactsInfo {List<ContactsInfo> localList;List<ContactsInfo> SIMList;Context context;ContactsInfo contactsInfo;ContactsInfo SIMContactsInfo;public GetContactsInfo(Context context) {localList = new ArrayList<ContactsInfo>();SIMList = new ArrayList<ContactsInfo>();this.context = context;}// ----------------得到本地联系人信息-------------------------------------public List<ContactsInfo> getLocalContactsInfos() {ContentResolver cr = context.getContentResolver();String str[] = { Phone.CONTACT_ID, Phone.DISPLAY_NAME, Phone.NUMBER,Phone.PHOTO_ID };Cursor cur = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, str, null,null, null);if (cur != null) {while (cur.moveToNext()) {contactsInfo = new ContactsInfo();contactsInfo.setContactsPhone(cur.getString(cur.getColumnIndex(Phone.NUMBER)));// 得到手机号码contactsInfo.setContactsName(cur.getString(cur.getColumnIndex(Phone.DISPLAY_NAME)));// contactsInfo.setContactsPhotoId(cur.getLong(cur.getColumnIndex(Phone.PHOTO_ID)));long contactid = cur.getLong(cur.getColumnIndex(Phone.CONTACT_ID));long photoid = cur.getLong(cur.getColumnIndex(Phone.PHOTO_ID));// 如果photoid 大于0 表示联系人有头像 ,如果没有给此人设置头像则给他一个默认的if (photoid > 0) {Uri uri = ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI, contactid);InputStream input = ContactsContract.Contacts.openContactPhotoInputStream(cr, uri);contactsInfo.setBitmap(BitmapFactory.decodeStream(input));} else {contactsInfo.setBitmap(BitmapFactory.decodeResource(context.getResources(), R.drawable.ic_launcher));}System.out.println("---------联系人电话--"+ contactsInfo.getContactsPhone());localList.add(contactsInfo);}}cur.close();return localList;}public List<ContactsInfo> getSIMContactsInfos() {TelephonyManager mTelephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);              System.out.println("---------SIM--------");ContentResolver cr = context.getContentResolver();final String SIM_URI_ADN = "content://icc/adn";// SIM卡Uri uri = Uri.parse(SIM_URI_ADN);Cursor cursor = cr.query(uri, null, null, null, null);while (cursor.moveToFirst()) {SIMContactsInfo = new ContactsInfo();SIMContactsInfo.setContactsName(cursor.getString(cursor.getColumnIndex("name")));SIMContactsInfo.setContactsPhone(cursor.getString(cursor.getColumnIndex("number")));SIMContactsInfo.setBitmap(BitmapFactory.decodeResource(context.getResources(),R.drawable.ic_launcher));SIMList.add(SIMContactsInfo);}cursor.close();return SIMList;}}

更多相关文章

  1. Android(安卓)添加删除联系人2.0之前与2.0之后
  2. Android获取通话记录
  3. 使用eclipse创建android工程时得到警告
  4. Android中向服务器上传图片
  5. Android(安卓)文件操作
  6. [通讯录] android通讯录数据库表解析和添加,访问通讯录
  7. android定位得到城市
  8. Android提取系统所有的缩略图
  9. Android(安卓)学习笔记 Contacts (二)Contacts 联系人详解

随机推荐

  1. Android(安卓)首次开机优化
  2. Android中图像变换Matrix的原理、代码验
  3. Android(安卓)画图类View与SurfaceView之
  4. Android(安卓)JNI学习笔记1(Android(安卓
  5. 2D Physics on Android(安卓)Using Box2D
  6. 如何让android apk 获得系统权限
  7. android: busybox am aapt
  8. Android(安卓)Studio 添加类似eclipse 里
  9. android菜单详解六:快捷键和菜单intent
  10. android loggin