您的位置:首页 > 移动开发 > Android开发

android2.1获得联系人信息+Android 获取信息终端

2010-10-11 14:07 513 查看
Android 获取信息终端
http://www.cnmsdn.com/ 2010年08月23日 11:19 收藏本页
  获取SIM卡提供国家代码(ISO)

  Java代码

  TelephonyManager telManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);

  telManager.getSimCountryIso();

  TelephonyManager telManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);

  telManager.getSimCountryIso();

  SIM卡的序列号

  Java代码

  TelephonyManager telManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);

  telManager.getSimSerialNumber();

  TelephonyManager telManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);

  telManager.getSimSerialNumber();

  获取其他信息以此类推

  AndroidManifest.xml必须以下设置

  Xml代码

  < uses-permission android:name="android.permission.READ_PHONE_STATE" />

1.android2.1获得联系人信息

从android2.0开始,联系人的API做了很大的调整。

  People接口由ContactsContract.Contacts代替。

  闲话不多说看代码。

Java代码

  public void getContact(){

  //获得所有的联系人

  Cursor cur = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);

  //循环遍历

  if (cur.moveToFirst()) {

  int idColumn = cur.getColumnIndex(ContactsContract.Contacts._ID);

  int displayNameColumn = cur.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME);

  do {

  //获得联系人的ID号

  String contactId = cur.getString(idColumn);

  //获得联系人姓名

  String disPlayName = cur.getString(displayNameColumn);

  //查看该联系人有多少个电话号码。如果没有这返回值为0

  int phoneCount = cur.getInt(cur.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER));

  if(phoneCount>0){

  //获得联系人的电话号码

  Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,null,ContactsContract.CommonDataKinds.Phone.CONTACT_ID+ " = " + contactId, null, null);

  if(phones.moveToFirst()){

  do{

  //遍历所有的电话号码

  String phoneNumber= phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));

  System.out.println(phoneNumber);

  }while(phones.moveToNext());

  }

  }

  } while (cur.moveToNext());

  }

  }

  在联系人的电话号码中有很多种,如果只想获得手机号码。代码如下:

  Cursor phones = mContext.getContentResolver().query(

  ContactsContract.CommonDataKinds.Phone.CONTENT_URI,

  null,

  ContactsContract.CommonDataKinds.Phone.CONTACT_ID

  + " = " + contactId +" and "+ContactsContract.CommonDataKinds.Phone.TYPE+"="+ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE, null, null);

2.Android 获取信息终端:

获取SIM卡提供国家代码(ISO)

  Java代码

  TelephonyManager telManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);

  telManager.getSimCountryIso();

  TelephonyManager telManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);

  telManager.getSimCountryIso();

  SIM卡的序列号

  Java代码

  TelephonyManager telManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);

  telManager.getSimSerialNumber();

  TelephonyManager telManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);

  telManager.getSimSerialNumber();

  获取其他信息以此类推

  AndroidManifest.xml必须以下设置

  Xml代码

  < uses-permission android:name="android.permission.READ_PHONE_STATE" />
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: