zoukankan      html  css  js  c++  java
  • 简单的广播发送与接收

    发送端:

     public class MainActivity extends Activity { //先在布局文件main.xml中定义一个Button
    /*
      * 
      * <Button
      *  android:layout_width="fill_parent" 
      *  android:layout_height="wrap_content"
      *  android:text="@string/button_send"
      *  android:id="@+id/send_broadcast_button"
      *  />
      * 
      */
    
    
    private Button send_broadcast_button; @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            send_broadcast_button = (Button) this.findViewById(R.id.send_broadcast_button);
            send_broadcast_button.setOnClickListener(new SendBroadcast());
        }
    private class SendBroadcast implements View.OnClickListener {  @Override
      public void onClick(View v) {
       
       Intent intent = new Intent();
       intent.setAction("cn.abel.action.broadcast");
       
       //要发送的内容
       intent.putExtra("author", "Abel");
       
       //发送 一个无序广播
       MainActivity.this.sendBroadcast(intent);
      }
      
    }
    }

    接收端:

    public class MainActivity extends Activity {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            IntentFilter intentFilter = new IntentFilter();
            intentFilter.addAction("cn.abel.action.broadcast");
            this.registerReceiver(new MyBroadcastReciver(), intentFilter);
        }
        private class MyBroadcastReciver extends BroadcastReceiver {  @Override
      public void onReceive(Context context, Intent intent) {
       String action = intent.getAction();
       if(action.equals("cn.abel.action.broadcast")) {
        String author = intent.getStringExtra("author");
        
        //在控制台显示接收到的广播内容
        System.out.println("author==>"+author);
        
        //在android端显示接收到的广播内容
        Toast.makeText(MainActivity.this, author, 1).show();
        
        //在结束时可取消广播
        //MainActivity.this.unregisterReceiver(this);
       }
      }
         
        }
    }
  • 相关阅读:
    常用模块(time,os,sys,collections,random,序列化模块,re)
    python-函数篇
    内置函数——filter和map
    python杂七杂八的用法
    计算机硬件
    操作系统简介
    Django入门
    linux下查看cpu物理个数和逻辑个数
    python反射的妙用
    Python(文件、文件夹压缩处理模块,shelve持久化模块,xml处理模块、ConfigParser文档配置模块、hashlib加密模块,subprocess系统交互模块 log模块)
  • 原文地址:https://www.cnblogs.com/niray/p/3857278.html
Copyright © 2011-2022 走看看