Android 获取未读短信未接电话数目

简介: 引用:http://blog.csdn.net/zhuangxujun/article/details/7035430 [java] view plaincopy if (mIntentReceiver == null) {               ...

引用:http://blog.csdn.net/zhuangxujun/article/details/7035430

[java]  view plain copy
  1. <pre name="code" class="java"></pre><pre name="code" class="java"><pre name="code" class="java">if (mIntentReceiver == null) {  
  2.   
  3.   
  4.             mIntentReceiver = new MissedCallIntentReceiver();  
  5.             final IntentFilter myFilter = new IntentFilter();  
  6.                     myFilter.addAction("com.android.phone.NotificationMgr.MissedCall_intent");  
  7.             getApplicationContext().registerReceiver(mIntentReceiver, myFilter);  
  8.   
  9.   
  10.                 }  
  11.                 getApplicationContext().getContentResolver().registerContentObserver(Uri.parse("content://mms-sms/"), true,   
  12.                                                                                             new newMmsContentObserver(getApplicationContext(),   myHandler)); </pre><br>  
  13. <pre></pre>  
  14. <pre name="code" class="java"private  class MissedCallIntentReceiver extends BroadcastReceiver {</pre><pre name="code" class="java">                @Override  
  15.         public void onReceive(Context context, Intent intent) {  
  16.                        missedCallCount=intent.getIntExtra(MISSECALL_EXTRA, 0);//未接电话数目  
  17.                        
  18.         }  
  19.     }  
  20.   
  21.   
  22.     private void findNewSmsCount(Context ctx){  
  23.         Cursor  csr = null;  
  24.         try {  
  25.             csr = getApplicationContext().getContentResolver().query(Uri.parse("content://sms"), null,"type = 1 and read = 0"nullnull);  
  26.         } catch (Exception e) {  
  27.              e.printStackTrace();  
  28.         } finally {  
  29.              csr.close();  
  30.         }  
  31.         newSmsCount=csr.getCount(); //未读短信数目  
  32.         Log.v(TAG,"newSmsCount="+newSmsCount);  
  33.     }  
  34.   
  35.     private void findNewMmsCount(Context ctx){  
  36.         Cursor  csr = null;  
  37.         try {  
  38.              csr = getApplicationContext().getContentResolver().query(Uri.parse("content://mms/inbox"), null,  
  39.                       "read = 0"nullnull);  
  40.         } catch (Exception e) {  
  41.              e.printStackTrace();  
  42.         } finally {  
  43.              csr.close();  
  44.         }  
  45.          newMmsCount=csr.getCount();//未读彩信数目  
  46.     }  
  47. //监控短信,彩信数目变化  
  48.     public class newMmsContentObserver extends ContentObserver{  
  49.         private Context ctx;         
  50.      
  51.         public newMmsContentObserver(Context context, Handler handler) {       
  52.             super(handler);       
  53.             ctx = context;       
  54.         }       
  55.   
  56.     @Override      
  57.     public void onChange(boolean selfChange){     
  58.         Log.v(TAG,"newMmsContentObserver onChange:");  
  59.         newMmsCount=0;      
  60.     newSmsCount=0;          
  61.         findNewMmsCount(ctx);  
  62.     findNewSmsCount(ctx);  
  63.          
  64.        }  
  65.      }</pre><br>  
  66. <br>  
  67. <pre></pre>  
  68. <br>  
  69. <span style="font-size:18px; color:#ff0000"><strong>用于获取未读短信未接电话数目</strong></span><br>  
  70.        
  71.   
  72. </pre>  
相关文章
|
11月前
|
存储 API Android开发
Android接收短信-createFromPdu
Android接收短信-createFromPdu
106 0
|
Android开发
Android 在应用图标上设置未读消息数量
Android 在应用图标上设置未读消息数量
1115 2
Android 在应用图标上设置未读消息数量
Android--短信拦截及IP拨号
版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/chaoyu168/article/details/51025730 public ...
844 0
|
Android开发 数据可视化 计算机视觉
Android 底部导航栏添加消息数目提示
效果图 写一篇短小精悍,好用的知识积累吧。开发中时常会出现信息提醒,新内容提示等等一堆问题。其实就是在各种控件或者是item上面加“小圆点”。
1184 0
|
Android开发
Android BGABadgeView:新消息/未接来电/未读消息/新通知圆球红点提示(1)
 Android BGABadgeView:新消息/未接来电/未读消息/新通知圆球红点提示(1) 现在很多的APP会有新消息/未接来电/未读消息/新通知圆球红点提示,典型的以微信、QQ新消息提示为例,当微信朋友圈有新的朋友更新/发布朋友圈消息后,在微信的底部切换卡上会有一个红色的小圆球红点,表示有新消息,提示用户查看。
1199 0
|
Android开发
Android开源BezierView:仿QQ未读消息99+条的红色气泡
 Android开源BezierView:仿QQ未读消息99+条的红色气泡 在移动版的QQ中,如果用户的QQ消息超过99条,会有这样的消息提示气泡(包含拖动动画): Android第三方开源的BezierView实现了上述QQ的99+条未读消息气泡显示。
935 0
|
XML Android开发 数据格式
仿微信、短信、QQ等消息数目右上角红色小圆球气泡显示(基于Android XML布局文件实现)
效果图如下: 仿微信、短信、来电未接数目、QQ等消息数目右上角红色小圆球气泡显示(基于Android XML布局文件实现)。
1042 0
|
网络协议 Android开发 数据库
android开发之来电、短信、广播综合练习
点击(此处)折叠或打开 package com.example.incoming_number; import java.
809 0
|
5天前
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
24 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库