首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

监听短信并判断是不是未读

2012-09-18 
监听短信并判断是否未读final String SMS_RECEIVED android.provider.Telephony.SMS_RECEIVEDBroadca

监听短信并判断是否未读

final String SMS_RECEIVED = "android.provider.Telephony.SMS_RECEIVED";   BroadcastReceiver SMSbr = new BroadcastReceiver() {               @Override          public void onReceive(Context context, Intent intent) {                                 Bundle bundle = intent.getExtras();                   if (bundle != null) {                                                   Object[] pdus = (Object[]) bundle.get("pdus");                           final SmsMessage[] messages = new SmsMessage[pdus.length];                           for (int i = 0; i < pdus.length; i++)                                   messages[i] = SmsMessage                                                   .createFromPdu((byte[]) pdus[i]);                           if (messages.length > -1) {                                 .                                   String smsToast = "New SMS received from "                                                  + messages[0].getOriginatingAddress() + "\n'"                                                  + messages[0].getMessageBody() + "'";                                   Toast.makeText(context, smsToast, Toast.LENGTH_LONG)                                                   .show();                           }                   }           }   };     IntentFilter SMSfilter = new IntentFilter(SMS_RECEIVED);   this.registerReceiver(SMSbr, SMSfilter);  final String SMS_RECEIVED = "android.provider.Telephony.SMS_RECEIVED";BroadcastReceiver SMSbr = new BroadcastReceiver() {         @Override        public void onReceive(Context context, Intent intent) {                              Bundle bundle = intent.getExtras();                if (bundle != null) {                                                Object[] pdus = (Object[]) bundle.get("pdus");                        final SmsMessage[] messages = new SmsMessage[pdus.length];                        for (int i = 0; i < pdus.length; i++)                                messages[i] = SmsMessage                                                .createFromPdu((byte[]) pdus[i]);                        if (messages.length > -1) {                              .                                String smsToast = "New SMS received from "                                                + messages[0].getOriginatingAddress() + "\n'"                                                + messages[0].getMessageBody() + "'";                                Toast.makeText(context, smsToast, Toast.LENGTH_LONG)                                                .show();                        }                }        }};IntentFilter SMSfilter = new IntentFilter(SMS_RECEIVED);this.registerReceiver(SMSbr, SMSfilter);  private boolean checkSMS() {           // Sets the sms inbox's URI           Uri uriSMS = Uri.parse("content://sms");           Cursor c = getBaseContext().getContentResolver().query(uriSMS, null,                           "read = 0", null, null);           // Checks the number of unread messages in the inbox           if (c.getCount() == 0) {                   return false;           } else                  return true;   }  private boolean checkSMS() {        // Sets the sms inbox's URI        Uri uriSMS = Uri.parse("content://sms");        Cursor c = getBaseContext().getContentResolver().query(uriSMS, null,                        "read = 0", null, null);        // Checks the number of unread messages in the inbox        if (c.getCount() == 0) {                return false;        } else                return true;}  <uses-permission id="android.permission.RECEIVE_SMS" />   <uses-permission id="android.permission.READ_SMS" />  

热点排行