今天小编给大家分享一下Android广播机制原理与开发的方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。标准广播:完全异步执行,广播发出后,所有广播接收器几乎都同一时刻收到这条广播(无法被截断)有序广播:同步执行,广播发出后同一时刻只会有一个广播接收器能收到这条广播消息,前面的接收器可以截断正在传递的广播广播接收器可在代码中注册和AndroidManifest.xml中注册,前者为动态注册,后者被称为静态注册。示例代码:Export属性表示是否允许这个广播接收器接收本程序以外的广播,enable表示是否使用这个广播接收器。添加了filter就可以过滤了可以通过左键新建-》其它来新建静态注册广播广播接收器中不允许开线程,当onReceive方法运行较长时间而没结束时,程序就会报错,所以其中不能添加过多的逻辑或任何耗时操作。通过点击按钮发送广播这里是自定义的接收器在xml中定义过滤的广播类型广播是一种跨进程的通信方式只需要修改一行代码 sendOrederedBroadcast即可发送有序广播,同时在接收器的xml文件中可以设置优先级如果想要在接收到广播之后就让广播停止继续传递呢,修改onReceive的代码即可前面我们发送和接收的广播全部属于系统全局广播,即发出的广播可以被其他任何应用程序接收到,并且我们也可以接收来自于其他任何应用程序的广播。这样就很容易引起安全性的问题,比如说我们发送的一些携带关键性数据的广播有可能被其他的应用程序截获,或者其他的程序不停地向我们的广播接收器里发送各种垃圾广播。使用本地广播则发出的广播只能在应用程序内部传递,并且接收器也只能接收来自本应用程序发出的广播。代码的不同主要在于需要首先获取实例,然后还要有注册。需要注意的是,本地广播无法通过静态注册来接收。强制下线功能首先需要实现下关闭所有的活动的功能,新建一个ActivityCollector类管理所有的活动然后创建baseActivity类作为活动的父类,代码如下:我们可以注意到,之前编写注册和销毁接收器的时候是在onCreate和onDestroy这两个函数里的,但是上面代码中却写在了onResume和onPause里面,这是因为我们每次都只需要在栈顶的活动接收广播,非栈顶活动没必要接收这条广播。除此之外,我们创建一个登陆的活动,在活动页面上放置输入框,并编写登录逻辑这样就模拟了登录的窗口,然后在mainActivity中加入触发强制下线的代码这样逻辑就差不多了,下面去AndroidManifest.xml中修改下程序入口即可。以上就是“Android广播机制原理与开发的方法是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天免费云主机域名都会为大家更新不同的知识,如果还想学习更多的知识,请关注百云主机行业资讯频道。
这篇文章主要介绍“C#的foreach循环怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C#的foreach循环怎么使用”文章能帮助大家解决问题。在前面的实例中,我们使用一个 for 循环来访问每个数组元素。您…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。