1. packagecom.example.xxxx;
  2. importcom.example.xxxx.R;
  3. importandroid.app.Activity;
  4. importandroid.content.ContentValues;
  5. importandroid.database.ContentObserver;
  6. importandroid.database.Cursor;
  7. importandroid.net.Uri;
  8. importandroid.os.Bundle;
  9. importandroid.os.Handler;
  10. publicclassScreenTestextendsActivity{
  11. publicvoidonCreate(BundlesavedInstanceState){
  12. super.onCreate(savedInstanceState);
  13. setContentView(R.layout.main);
  14. SmsContentcontent=newSmsContent(newHandler());
  15. //注册短信变化监听
  16. this.getContentResolver().registerContentObserver(
  17. Uri.parse("content://sms/"),true,content);
  18. }
  19. classSmsContentextendsContentObserver{
  20. privateCursorcursor=null;
  21. publicSmsContent(Handlerhandler){
  22. super(handler);
  23. }
  24. @Override
  25. publicvoidonChange(booleanselfChange){//当短信表发送改变时,调用该方法
  26. super.onChange(selfChange);
  27. //读取收件箱中指定号码的短信
  28. cursor=managedQuery(Uri.parse("content://sms/inbox"),
  29. newString[]{"_id","address","read"},
  30. "address=?andread=?",
  31. newString[]{"12345678901","0"},"datedesc");
  32. if(cursor!=null){
  33. ContentValuesvalues=newContentValues();
  34. values.put("read","1");//修改短信为已读模式
  35. cursor.moveToFirst();
  36. while(cursor.isLast()){//更新当前未读短信状态为已读
  37. getContentResolver().update(Uri.parse("content://sms/inbox"),
  38. values,"_id=?",newString[]{""+cursor.getInt(0)});
  39. cursor.moveToNext();
  40. }
  41. }//endofif
  42. }//endofpublicvoid
  43. }//endofclassSmsContent
  44. }

拦截短信最简单的就是建个receiver接受<action android:name="android.provider.Telephony.SMS_RECEIVED" />

这个系统广播,之后

        
  1. Bundlebundle=intent.getExtras();
  2. Objectmessages[]=(Object[])bundle.get("pdus");
  3. SmsMessagesmsMessage[]=newSmsMessage[messages.length];
  4. for(intn=0;n<messages.length;n++){
  5. smsMessage[n]=SmsMessage.createFromPdu((byte[])messages[n]);
  6. }

更多相关文章

  1. Android(安卓)TV开发中所有的遥控器按键监听
  2. android 游戏框架SurfaceView
  3. Android开启/关闭/监听 飞行模式
  4. 强强学Android_Android事件传递
  5. android 蓝牙app代码
  6. android实现发送短信demo
  7. android socket
  8. android 监听判断软键盘的弹出、隐藏状态
  9. Android耳机按键监听

随机推荐

  1. Android EditText 属性汇总
  2. android中translate动画
  3. Android如何在service中弹出对话框
  4. Android(安卓)Application Task Activiti
  5. Android中LinearLayout布局的常用属性总
  6. ArcGIS for Android地图控件的5大常见操
  7. Android 监听home键(android:launchMode="
  8. 下载android sdk, adt
  9. 【Android-002】【常见布局】
  10. Android Edittext焦点处理;