Android BroadcastReceiver
来源:互联网 发布:sql数据库软件 编辑:程序博客网 时间:2024/05/20 20:57
静态注册:
静态注册步骤:
1. 创建 BroadcastReceiver子类
package com.example.broadcastreceiver;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.widget.Toast;public class MyReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { String msg=intent.getStringExtra("msg"); Toast.makeText(context, msg, 0).show(); }}
2. Manifest文件中注册并添加权限
//静态权限<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/><receiver android:name="com.example.broadcastreceiver.MyReceiver"> <intent-filter> <action android:name="com.dragon.net"></action> </intent-filter> </receiver>
3.实例化 Intent,setAction
package com.example.broadcastreceiver;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class MainActivity extends Activity { Button btn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btn=(Button)findViewById(R.id.button1); //静态注册 //1. 创建 BroadcastReceiver子类 //2. Manifest文件中注册 //3.实例化 Intent,setAction //4.发送 final Intent in=new Intent(); in.setAction("com.dragon.net"); in.putExtra("msg","静态注册"); btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { sendBroadcast(in); } }); }}
动态注册步骤:
//动态注册 //1.创建IntentFilter对象 //2.为filter添加action //3.创建MyDynamicReceiver对象 //4.注册 IntentFilter filter=new IntentFilter(); filter.addAction("com.zhangshuo.ok"); MyDynamicReceiver receiver=new MyDynamicReceiver(); registerReceiver(receiver, filter); btn1.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent in1=new Intent(); in1.setAction("com.zhangshuo.ok"); in1.putExtra("msg1","动态注册!"); sendBroadcast(in1); } });
MyDynamicReceiver类
package com.example.broadcastreceiver;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.widget.Toast;public class MyDynamicReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if(intent.getAction().equals("com.zhangshuo.ok")){ String msg1=intent.getStringExtra("msg1"); Toast.makeText(context, msg1, 0).show(); } }}
0 0
- Android:BroadcastReceiver
- android BroadcastReceiver
- Android BroadcastReceiver
- BroadcastReceiver Android
- Android BroadcastReceiver
- android BroadcastReceiver
- Android BroadCastReceiver
- Android BroadcastReceiver
- Android BroadcastReceiver
- android BroadcastReceiver
- android BroadcastReceiver
- Android BroadcastReceiver
- Android BroadcastReceiver
- android BroadcastReceiver
- Android BroadcastReceiver
- Android BroadcastReceiver
- Android BroadcastReceiver
- android BroadcastReceiver
- IName对象的理解
- 再回递归调用
- 修改查看MySQL编码格式【转载】
- 随机的力量(2) - 矩阵比较
- CentOS7配置Apache多站点VirtualHost
- Android BroadcastReceiver
- Java多线程(十)之ReentrantReadWriteLock深入分析
- 记录——《C Primer Plus (第五版)》第十章编程练习第八题
- 设计模式 一一一 装饰模式
- 乘法逆元
- java中为什么要给类使用代理?它有哪些好处?
- 对C++中string类型的总结
- 记录——《C Primer Plus (第五版)》第十章编程练习第九题
- 配置 PHP 软件开发环境