ITPub博客

首页 > 移动开发 > ANDROID > Android中动态注册

Android中动态注册

原创 ANDROID 作者:山有木xi 时间:2020-03-10 10:48:36 0 删除 编辑

Android广播是一个很重要,也很有用的功能,其中的动态注册更是很重要,相比于静态注册早AndroidManifest.xml中注册,动态注册只需要在代码中操作即可

第一种写法:

首先新建一个Java类,通过"New/Other/Broadcast Receiver",命名为MyReceiver,添加以下内容

public static String ACTION="learnbroadcastreceive.MyReceive";

然后添加

public MyReceive{
public void OnReceive(Context context,Intent intent){
Toast.maetText(context,"收到一条广播",toast.LENGTH_LONG).show();
}
}


然后在MainAcitivity中添加

private Myreceiver receiver=null;

然后添加

public void registeMyReceiver(View view){
if(receive==null){
receive=new MyReceiver();
registerReceiver(receiver,new intentFilter(MyReceive.Action));
}
}
public void unRegisterReceiver(){
if (receive!=null){
unregistReceive(receiver);
receive=null;
}
}
public void sendBc(View view){
sendBroadcast(new Intent(this.MyReceive.ACTION));
}

然后在xml中修改相应的部分即可

第二种写法:

第二种写法,其实是将所有代码都放在MainAcitivity中

private IntentFlier intentfiler
private MyReceiver receive

onCreate中添加

receive=new MyReceiver();
registerReceiver(receiver,new intentFilter(MyReceive.Action));

新建

public void onDestroy(){
super.onDestroy
unregistReceive(receiver);
}
public void OnReceive(Context context,Intent intent){
Toast.maetText(context,"收到一条广播",toast.LENGTH_LONG).show();
}


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69917874/viewspace-2679352/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle OCA(Java),IBM高级工程师认证,中国软件行业人才(高级c语言),高级Android工程师,对数据库并发与性能调优也有一定了解

注册时间:2019-04-25

  • 博文量
    147
  • 访问量
    390779