当前位置:操作系统 > 安卓/Android >>

android获取短信所有内容

Java代码 
// 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+",");    
         

补充:移动开发 , Android ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,