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

担路网做网站多少钱网站建设要什么

担路网做网站多少钱,网站建设要什么,十大营销手段,室内设计这个行业怎么样文章目录 深入分析 Android BroadcastReceiver (三)1. 广播消息的优缺点及使用场景1.1 优点1.2 缺点 2. 广播的使用场景及代码示例2.1. 系统广播示例#xff1a;监听网络状态变化 2.2. 自定义广播示例#xff1a;发送自定义广播 2.3. 有序广播示例#xff1a;有序广播 2.4. … 文章目录 深入分析 Android BroadcastReceiver (三)1. 广播消息的优缺点及使用场景1.1 优点1.2 缺点 2. 广播的使用场景及代码示例2.1. 系统广播示例监听网络状态变化 2.2. 自定义广播示例发送自定义广播 2.3. 有序广播示例有序广播 2.4. 本地广播示例发送本地广播 3. 优化策略4. 总结 深入分析 Android BroadcastReceiver (三) 1. 广播消息的优缺点及使用场景 1.1 优点 松耦合广播机制允许应用组件之间以松散耦合的方式进行通信而不需要彼此了解具体实现。灵活性广播可以在应用的各个部分之间传递消息甚至跨进程传递。系统广播系统广播可以通知应用系统事件如网络变化、电量低等使得应用能及时响应系统状态变化。 1.2 缺点 性能问题在主线程中处理广播消息如果操作耗时会导致应用卡顿。安全性公开广播可能被其他应用接收和发送可能带来安全隐患需要合理使用权限管理。电量消耗频繁的广播通信会增加设备的电量消耗尤其是在后台频繁接收广播时。 2. 广播的使用场景及代码示例 2.1. 系统广播 系统广播是 Android 系统在特定事件发生时发出的广播比如设备启动完成、网络状态变化等。 示例监听网络状态变化 在 AndroidManifest.xml 中声明接收器 receiver android:name.NetworkChangeReceiverintent-filteraction android:nameandroid.net.conn.CONNECTIVITY_CHANGE//intent-filter /receiver接收器实现 public class NetworkChangeReceiver extends BroadcastReceiver {Overridepublic void onReceive(Context context, Intent intent) {ConnectivityManager connectivityManager (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);NetworkInfo networkInfo connectivityManager.getActiveNetworkInfo();if (networkInfo ! null networkInfo.isConnected()) {Toast.makeText(context, Network Connected, Toast.LENGTH_SHORT).show();} else {Toast.makeText(context, Network Disconnected, Toast.LENGTH_SHORT).show();}} }2.2. 自定义广播 应用内自定义广播用于应用内部组件之间的通信。 示例发送自定义广播 发送自定义广播 Intent intent new Intent(com.example.CUSTOM_ACTION); intent.putExtra(data, Broadcast Data); sendBroadcast(intent);在 AndroidManifest.xml 中声明接收器 receiver android:name.CustomReceiverintent-filteraction android:namecom.example.CUSTOM_ACTION//intent-filter /receiver接收器实现 public class CustomReceiver extends BroadcastReceiver {Overridepublic void onReceive(Context context, Intent intent) {String data intent.getStringExtra(data);Toast.makeText(context, Received: data, Toast.LENGTH_SHORT).show();} }2.3. 有序广播 有序广播允许多个接收器按优先级顺序接收并且可以中止广播的传播。 示例有序广播 发送有序广播 Intent intent new Intent(com.example.ORDERED_ACTION); sendOrderedBroadcast(intent, null);在 AndroidManifest.xml 中声明接收器并设置优先级 receiver android:name.FirstReceiver android:priority100intent-filteraction android:namecom.example.ORDERED_ACTION//intent-filter /receiverreceiver android:name.SecondReceiver android:priority50intent-filteraction android:namecom.example.ORDERED_ACTION//intent-filter /receiver接收器实现 public class FirstReceiver extends BroadcastReceiver {Overridepublic void onReceive(Context context, Intent intent) {Toast.makeText(context, First Receiver, Toast.LENGTH_SHORT).show();// 继续传播广播} }public class SecondReceiver extends BroadcastReceiver {Overridepublic void onReceive(Context context, Intent intent) {Toast.makeText(context, Second Receiver, Toast.LENGTH_SHORT).show();// 可以中止广播传播abortBroadcast();} }2.4. 本地广播 本地广播用于应用内部组件通信避免跨进程通信带来的安全和性能问题。 示例发送本地广播 发送本地广播 LocalBroadcastManager localBroadcastManager LocalBroadcastManager.getInstance(this); Intent localIntent new Intent(com.example.LOCAL_ACTION); localIntent.putExtra(data, Local Broadcast Data); localBroadcastManager.sendBroadcast(localIntent);动态注册本地广播接收器 Override protected void onStart() {super.onStart();IntentFilter filter new IntentFilter(com.example.LOCAL_ACTION);LocalBroadcastManager.getInstance(this).registerReceiver(localReceiver, filter); }Override protected void onStop() {super.onStop();LocalBroadcastManager.getInstance(this).unregisterReceiver(localReceiver); }private BroadcastReceiver localReceiver new BroadcastReceiver() {Overridepublic void onReceive(Context context, Intent intent) {String data intent.getStringExtra(data);Toast.makeText(context, Received: data, Toast.LENGTH_SHORT).show();} };3. 优化策略 避免耗时操作在 onReceive 中避免执行耗时操作使用 IntentService 或者其他异步机制。动态注册和取消注册在合适的生命周期方法中注册和取消注册接收器避免内存泄漏。合理使用本地广播尽量使用 LocalBroadcastManager 进行应用内广播避免不必要的跨进程通信。权限管理通过权限声明控制广播的发送和接收确保安全性。前台服务在长时间运行的任务中使用前台服务以减少服务被系统杀死的风险。 4. 总结 BroadcastReceiver 是 Android 应用程序中用于异步接收广播消息的重要组件。通过合理地使用系统广播、自定义广播、有序广播和本地广播开发者可以实现松耦合的组件通信。与此同时优化广播的处理流程和生命周期管理能有效提升应用的性能和稳定性。了解和掌握 BroadcastReceiver 的高级使用和优化策略是开发高效 Android 应用的重要技能。 欢迎点赞|关注|收藏|评论您的肯定是我创作的动力
http://www.hkea.cn/news/14443635/

相关文章:

  • wordpress主题emlog北京seo公司排名
  • 丽水网站建设报价专业网站定制报价
  • 学校网站建设栏目有哪些wordpress python采集器
  • php 网站模板 x11网站开发常用的数据库
  • 一个提高网站流量的常用方法黄永玉的艺术人生
  • 购物网站开发报告沈阳专业seo关键词优化
  • 河南省城乡住房建设厅网站建设银行车贷网站
  • 做的网站上传到服务器吗域名怎么做网站内容
  • 网站开发企业部门广州市建设局网站
  • 广州建设网站哪个好自己也可以免费轻松创建一个网站
  • 文化公司做网站交文化事业费吗在山东和网页有关的公司
  • 大连旅顺网站制作如何优化网站结构
  • 福州做网站的公司电话怎样创建网页
  • 企业网站推广渠道常见的网络推广方式有哪些
  • 外贸网站建设十大标准知名商城网站建设价格低
  • 南京网站建设 奥美通全网营销wordpress允许ping
  • 新开的网站怎么做推广百度推广一天费用200
  • 没有公司怎么做网站刚刚大连发布紧急通知
  • 金华建设网站公司新开传奇新服网手机版
  • 公司网站注销深圳seo关键词优化外包公司
  • 衡阳网站建设衡阳千度网络华东民航机场建设公司网站
  • 天津建设网站的公司简介广州pc网站建设
  • 网站抓取诊断热搜榜上能否吃自热火锅
  • 网站推广宜选刺盾云下拉格尔木城乡建设规划局网站
  • 网站一直百度上搜不到是怎么回事建设网站的服务器费用
  • 怎么自己做刷赞网站怎么制作wap网站
  • 厦门网站建设哪家公司好自己小程序制作流程
  • 网站的域名都有哪些wordpress链接样式设置
  • 哈尔滨网站开发电话青岛中英网站建设
  • 模仿网站铜仁网站建设公司