当前位置: 首页 > news >正文

注册网站怎么做网站wordpress关闭媒体库功能

注册网站怎么做网站,wordpress关闭媒体库功能,医疗网站建设计划书,钙网logo设计Android 跨进程之间通信 Android 跨进程之间通信(IPC)方式之BroadcastReceiverAndroid 跨进程之间通信(IPC)方式之ContentProvider 文章目录 Android 跨进程之间通信前言一、关于系统广播二、如何利用BroadcastReceiver跨进程通信1.创建广播接收器2.清单文件中声明注册3.发送广…Android 跨进程之间通信 Android 跨进程之间通信(IPC)方式之BroadcastReceiverAndroid 跨进程之间通信(IPC)方式之ContentProvider 文章目录 Android 跨进程之间通信前言一、关于系统广播二、如何利用BroadcastReceiver跨进程通信1.创建广播接收器2.清单文件中声明注册3.发送广播4.杀掉进程测试 小结 前言 广播是 Android 系统中一种强大的通信机制它允许应用程序中的不同组件之间进行信息交流甚至跨越不同应用程序之间进行通信。它类似于一个发布者-订阅者模式其中一个组件可以发送广播而其他组件则可以注册监听并在特定条件下接收这些广播消息。 广播可以被用来传递各种类型的信息比如设备状态的变化、系统事件、应用内部的消息等。它的灵活性和普适性使得开发者可以利用广播来实现诸如实时更新UI、触发特定操作、响应系统级事件等功能。通过广播Android 应用程序可以与用户进行无缝互动并实现多个组件之间的松耦合通信这对于实现复杂的应用逻辑和提升用户体验至关重要。 一、关于系统广播 系统会在发生各种系统事件时自动发送广播例如当系统进入和退出飞行模式时。系统广播会被发送给所有同意接收相关事件的应用。 广播消息本身会被封装在一个 Intent 对象中该对象的操作字符串会标识所发生的事件例如 android.intent.action.AIRPLANE_MODE。该 Intent 可能还包含绑定到其extra 字段中的附加信息。例如飞行模式 intent 包含布尔值 extra 来指示是否已开启飞行模式。 二、如何利用BroadcastReceiver跨进程通信 我们创建两个项目一个是项目A另一个是项目B。用两个不同项目来模拟两个进程之间的通信效果在 1.创建广播接收器 在A项目中创建 BroadcastReceiver 子类并实现 onReceive(Context, Intent)。以下示例中的广播接收器会记录并显示广播的内容 public class AReceiver extends BroadcastReceiver {private static final String ACTION_CUSTOM_BROADCAST_B com.xzhy.ademo.ACTION_CUSTOM_BROADCAST_B;private static final String EXTRA_MESSAGE message;Overridepublic void onReceive(Context context, Intent intent) {String action intent.getAction();if (ACTION_CUSTOM_BROADCAST_B.equals(action)) {String message intent.getStringExtra(EXTRA_MESSAGE);Log.d(AReceiver, --- AReceiver onReceive message: message);}} }2.清单文件中声明注册 在A项目中清单中声明广播接收器 receiver android:name.AReceiverandroid:exportedtrueintent-filteraction android:namecom.xzhy.ademo.ACTION_CUSTOM_BROADCAST_B //intent-filter/receiver3.发送广播 Android 为应用提供三种方式来发送广播 sendOrderedBroadcast(Intent, String) 方法一次向一个接收器发送广播。当接收器逐个顺序执行时接收器可以向下传递结果也可以完全中止广播使其不再传递给其他接收器。接收器的运行顺序可以通过匹配的 intent-filter 的 android:priority 属性来控制具有相同优先级的接收器将按随机顺序运行。sendBroadcast(Intent) 方法会按随机的顺序向所有接收器发送广播。这称为常规广播。这种方法效率更高但也意味着接收器无法从其他接收器读取结果无法传递从广播中收到的数据也无法中止广播。LocalBroadcastManager.sendBroadcast 方法会将广播发送给与发送器位于同一应用中的接收器。如果您不需要跨应用发送广播请使用本地广播。这种实现方法的效率更高无需进行进程间通信而且您无需担心其他应用在收发您的广播时带来的任何安全问题。 我们在B项目中用sendBroadcast(Intent) 向A项目发送一条广播消息代码如下。 Intent intent new Intent(com.xzhy.ademo.ACTION_CUSTOM_BROADCAST_B);intent.setPackage(com.xzhy.ademo); // 设置接收广播的应用包名intent.putExtra(message, Hello,这里是B面 Demo 的默认消息~);sendBroadcast(intent);先打开A项目保持在后台运行再打开B项目会发行A项目的日志显示已经收到了B发送的广播消息。既然B发送广播给A能够正常送达那么A发送给B消息只要和上面的步骤一样就可以做到A、B进程之间相互通信了。 4.杀掉进程测试 在A进程被系统意外杀死或者说主动关闭掉的话B通过广播发送消息给A通过日志可以发现A是无法收到消息。 B日志显示已经发送了广播消息但是A的日志情况显示没有收到B发送的消息 小结 本文简单的介绍了如何利用广播在两个不同进程内进行相互通信操作但是广播的接收者必须在运行状态下才能接收到广播消息。当一个进程被杀死时它注册的广播接收者也会随之销毁因此其他进程发送的广播消息将无法被接收到。因为广播是一种基于 Android 组件的通信方式需要组件处于活动状态才能接收到广播。
http://www.pierceye.com/news/832788/

相关文章:

  • 英文网站推广工作深圳制作网站有几家
  • 旅游推荐网站怎么做亚马逊关键词搜索工具
  • 网站建设技术部职责如何做公司网页制作
  • 广告公司怎么设置网站关键字网页鉴赏
  • 阳江网站开发网站设计 cdc
  • 密云建设银行招聘网站万网网站备份
  • 企业网站建设网站优化推广站群网站建设推广
  • 深圳市多语言网站建设公司营销网站建设公司哪家好
  • 网站推广是怎么做的仿腾讯网站源码
  • 北京市建设工程信息网站网站建设需要域名吗?
  • 做金融的网站有哪些阳江房地产信息网官方网站
  • h5能做网站开发吗黑链 对网站的影响
  • 专门做设计文案的网站wordpress 建站服务
  • 网站快速排名公司wordpress 插件 原理
  • 网站制作需要学什么公司网站管理属于什么职位
  • 南通专业企业门户网站设计学校怎么创建网站
  • 网站策划与建设阶段的推广方法中国建设教育协会安全员证
  • 建设银行网站用户名更改分销微信小程序开发
  • 荣成做网站的公司百度地图 wordpress
  • 扁平设计网站湖南健康二维码app下载安装
  • 大连成久建设工程有限公司网站针对爬虫爬取做的优化
  • 建设官方网站企业网银登录网站版面设计
  • 网站建设学什么软件怎样创建自己的公众号
  • 网站脑图怎么做云伙伴小程序开发公司
  • 网站设置兼容模式怎么弄wordpress文件架构
  • 网站模块顺序调整网易对象存储wordpress
  • 深圳网络建设网站郑州网站优化服务
  • 辽阳专业建设网站公司网站html动态效果代码
  • 微信上可以做网站吗网页设计作业讲解
  • 长春好的做网站公司潍坊 网站