• 广播机制


    一、             广播机制

    广播类:

    public class MyReveiver extends BroadcastReceiver {

    //等待接收广播

        @Override

        public void onReceive(Context context, Intent intent) {

           // TODO Auto-generated method stub

           String str=intent.getStringExtra("gb");

           Toast.makeText(context, str, Toast.LENGTH_LONG).show();

        }

    }

    Activity类:

    //发送一个广播  

    Intent intent=new Intent();

        intent.setAction(Intent.ACTION_EDIT);

        intent.putExtra("gb", "hi,我收到了消息!");

        BroadcastDemo.this.sendBroadcast(intent);

    Manifest代码清单:

    <receiverandroid:name=".MyReveiver">

           <intent-filter>

           <actionandroid:name="android.intent.action.EDIT"/>

           </intent-filter>

           </receiver>

    二、             广播机制

    使用代码注册广播:

    广播类:

    public class SmsReceiver extends BroadcastReceiver {

        @Override

        public void onReceive(Context context, Intent intent) {

           // TODO Auto-generated method stub

           

           Bundle bundle=intent.getExtras();

           Object[] objs=(Object[])bundle.get("pdus");

           SmsMessage[] msgs=new SmsMessage[objs.length];

           for(int i=0;i<msgs.length;i++){

               msgs[i]=SmsMessage.createFromPdu((byte[])objs[i]);

               String str=msgs[i].getDisplayMessageBody();

               //System.out.println(new String(str.getBytes("unicode"),"gbk"));

               Toast.makeText(context,str , Toast.LENGTH_LONG).show();

           }

           

           

        }

    }

    Activity类代码:

    class Btn1 implements OnClickListener{

    //注册广播,并声明通过类型

           public void onClick(View v) {

               // TODO Auto-generated method stub

               rece=new SmsReceiver();

               IntentFilter filter=new IntentFilter();

               filter.addAction("android.provider.Telephony.SMS_RECEIVED");

               BroadcastDemo2.this.registerReceiver(rece, filter);

           }

        

        }

        class Btn2 implements OnClickListener{

        public void onClick(View v) {

    //取消注册

               // TODO Auto-generated method stub

               BroadcastDemo2.this.unregisterReceiver(rece);

           }

        }

  • 相关阅读:
    Fleury算法
    2012 MultiUniversity Training Contest 2
    高斯若尔当消元法(线性代数)
    hdu4307(最小割)
    hdu4305(生成树计数)
    hdu4318(最短路)
    hdu4309(网络流)
    hdu4313(生成树)
    生成树计数
    MYSQL 远程登录及常用命令
  • 原文地址:https://www.cnblogs.com/itfenqing/p/4429522.html
Copyright © 2020-2023  润新知