读书人

android获取短信全部内容

发布时间: 2012-07-03 13:37:43 作者: rapoo

android获取短信所有内容

// android获取短信所有内容// 注意设置权限[添加到AndroidMainfest.xml]   <uses-permission android:name="android.permission.READ_SMS" /> public String getSmsInPhone()   {       final String SMS_URI_ALL   = "content://sms/";         final String SMS_URI_INBOX = "content://sms/inbox";       final String SMS_URI_SEND  = "content://sms/sent";       final String SMS_URI_DRAFT = "content://sms/draft";              StringBuilder smsBuilder = new StringBuilder();              try{           ContentResolver cr = getContentResolver();           String[] projection = new String[]{"_id", "address", "person",                    "body", "date", "type"};           Uri uri = Uri.parse(SMS_URI_ALL);           Cursor cur = cr.query(uri, projection, null, null, "date desc");             if (cur.moveToFirst()) {               String name;                String phoneNumber;                      String smsbody;               String date;               String type;                           int nameColumn = cur.getColumnIndex("person");               int phoneNumberColumn = cur.getColumnIndex("address");               int smsbodyColumn = cur.getColumnIndex("body");               int dateColumn = cur.getColumnIndex("date");               int typeColumn = cur.getColumnIndex("type");                           do{                   name = cur.getString(nameColumn);                                phoneNumber = cur.getString(phoneNumberColumn);                   smsbody = cur.getString(smsbodyColumn);                                      SimpleDateFormat dateFormat = new SimpleDateFormat(                           "yyyy-MM-dd hh:mm:ss");                   Date d = new Date(Long.parseLong(cur.getString(dateColumn)));                   date = dateFormat.format(d);                                      int typeId = cur.getInt(typeColumn);                   if(typeId == 1){                       type = "接收";                   } else if(typeId == 2){                       type = "发送";                   } else {                       type = "";                   }                                   smsBuilder.append("[");                   smsBuilder.append(name+",");                   smsBuilder.append(phoneNumber+",");                   smsBuilder.append(smsbody+",");                   smsBuilder.append(date+",");                   smsBuilder.append(type);                   smsBuilder.append("] ");                                   if(smsbody == null) smsbody = "";                 }while(cur.moveToNext());           } else {               smsBuilder.append("no result!");           }                       smsBuilder.append("getSmsInPhone has executed!");       } catch(SQLiteException ex) {           Log.d("SQLiteException in getSmsInPhone", ex.getMessage());       }       return smsBuilder.toString();   }  

?

读书人网 >Android

热点推荐