zoukankan      html  css  js  c++  java
  • BroadcastReceiver注册、使用及其权限

      首先声明一个类,此类继承自BroadcastReceiver类,处理Android当中发出的广播事件:  

        public class SMSReceiver extends BroadcastReceiver{

          @Override
          public void onReceive(Context context, Intent intent) {
            // TODO Auto-generated method stub
            Log.d("MyDebug", "SendMessage");       

            //接收Intent对象当中的数据,获得发送短信的内容
            Bundle bundle = intent.getExtras();
            //在Bundle对象当中有一个属性名为pdus,这个属性的值是一个Object数组
            Object[] myOBJpdus = (Object[])bundle.get("pdus");
            //创建一个SmsMessage类型的数组
            SmsMessage[] messages = new SmsMessage[myOBJpdus.length];
            for(int i =0;i<myOBJpdus.length;i++){
            //使用Object数组当中的对象创建SmsMessage对象
            messages[i] = SmsMessage.createFromPdu((byte[])myOBJpdus[i]);
            Log.d("MyDebug", messages[i].getDisplayMessageBody());
          }

        }

      在AndroidManifest.xml文件中静态定义SMSReceiver类接收Android的接收到短信广播事件:

        <receiver android:name=".SMSReceiver">
          <intent-filter >
            <action android:name="android.provider.Telephony.SMS_RECEIVED"/>
          </intent-filter>
        </receiver>

      要想触发短信接收广播事件,应在AndroidManifest.xml中首先声明响应的权限:

        <uses-permission android:name="android.permission.RECEIVE_SMS"/>

      在代码中定义接收到短信广播事件处理:

        private static final String SMS_ACTION = "android.provider.Telephony.SMS_RECEIVED";

        SMSReceiver smsReceiver = new SMSReceiver(); //生成一个BroadCastReceiver对象
        //生成一个IntentFilter对象
        IntentFilter filter = new IntentFilter();
        filter.addAction(SMS_ACTION);
        OtherActivity.this.registerReceiver(smsReceiver, filter);

      在代码中解除对事件的接收到短信广播的绑定:

        OtherActivity.this.unregisterReceiver(smsReceiver);

  • 相关阅读:
    Sql inner join
    转:MySQL 的show processlist
    session cookie
    集群和分布式
    设计模式
    Web性能优化——缓存
    关于 java 里面的路径
    1分钟看懂log4j 配置自己想要的日志信息
    spring @bean 的理解
    如何用iptables实现NAT(转)
  • 原文地址:https://www.cnblogs.com/zhanglei93/p/4668551.html
Copyright © 2011-2022 走看看