前言EventBus是一种用于Android的发布/订阅事件总线。它有很多优点:简化应用组件间的通信;解耦事件的发送者和接收者;避免复杂和容易出错的依赖和生命周期的问题;很快,专门为高性能优化过等等。基础知识EventBus使用了发布者/订阅者模式。发布者通过EventBus发布事件,订阅者通过EventBus订阅事件。当发布者发布事件时,订阅该事件的订阅者的事件处理方法将被调用。使用详解本文将按
# Android EventBus 使用指南 在 Android 开发中,组件之间的通信是一项常见且必要的操作。常规的方式往往需要大量的耦合度,EventBus 提供了一种高效简洁的解决方案。本文将带您了解 EventBus 的使用,并通过代码示例进行演示。 ## 什么是 EventBus? EventBus 是一个用于组件间消息传递的开源库,由 Greenrobot 开发。它利用发布-订
原创 9月前
23阅读
Android消息处理机制深度解析笔记前言很多程序猿(媛)都对消息处理机制做过分析,大家都基本了解了MessageQueue、Handler、Looper之间相互之间怎么协同工作,但是具体到消息是如何传递,取出,如何处理的过程并不是那么清晰,本人曾经也是如此。为了拿下这个城池,特此写下此文深入分析其中的每一处是如何工作。一、概述Android的应用程序是通过消息机制来驱动的,深入理解Android
转载 2023-11-27 15:00:58
52阅读
# Android项目中的EventBus: 实现组件之间的解耦 在Android开发中,活动(Activity)和服务(Service)之间的通信是常见的需求。传统的方式往往依赖于回调或者是接口,这可能导致代码复杂并且难以维护。为了解决这个问题,`EventBus`库应运而生。`EventBus`可以帮助你在应用中实现不同组件之间的通信,同时保持较低的耦合度。 ## 什么是EventBus?
原创 11月前
14阅读
log4j2的简单使用Apache Log4j2 是对Log4j 的升级版本,参考了logback 的一些优秀的设计,并且修复了一些问题,因此带来了一些重大的提升,主要有:异常处理,在logback中,Appender中的异常不会被应用感知到,但是在log4j2中,提供了一些异常处理机制。 性能提升,log4j2 相较于log4j 和 logback 都具有明显的性能提升,有18倍性能提升,后面会
Android项目实战-手机安全卫士】 目标:快速积累开发经验,具备中级Android工程师能力。 如遇到难以理解的逻辑或功能,可以先将程序打断点观察程序的执行逻辑。 第一章项目简介:欢迎界面、主界面 第二章手机防盗:手机sim卡绑定、GPS定位、远程锁屏、远程删除数据 第三章通讯卫士:黑名单添加、电话拦截、短信拦截 第四章软件管
文章目录一、EventBus 概述1.1 定义1.2 作用1.3 特点1.4 相关概念二、使用2.1 引用2.2 定义事件2.3 准备订阅者2.3 注册与注销2.4 发布事件涉及的知识点(1) 事件类型(2) 线程模型(3)编译时索引(4)构建者模式(5)混淆源码解析注册(1)EventBus.getDefault()创建EventBus对象(2) register(Object subscri
转载 2023-09-27 21:12:59
67阅读
一、简介订阅发布模式(Publish-Subscribe Pattern)是一种行之有效的解耦框架与业务逻辑的方式,也是一种常见的观察者设计模式,它被广泛应用于事件驱动架构中。在这个模式中,发布者(或者说是主题)并不直接发送消息给订阅者,而是通过调度中心(或者叫消息代理)来传递消息。 发布者(或者说是主题)并不知道订阅者的存在,而订阅者也不知道发布者的存在。他们彼此唯一的关系就是在调度中心注册成为
转载 2024-08-30 21:31:52
65阅读
一、什么是LiveData。LiveData 是可观察的数据持有者类。与常规的可观察对象不同,LiveData具有生命周期感知功能,这意味着它尊重其他应用程序组件(例如活动,片段或服务)的生命周期。这种意识确保LiveData仅更新处于活动生命周期状态的应用程序组件观察者。 如果LiveData的Observer生命周期处于STARTEDor RESUMED 状态,则它认为由类表示的观察者 处于活
转载 6月前
12阅读
前言:EvenBus 很火,不知道什么时候开始,自定义生成模板代替注解。EvenBus 3.0 同样支持了这种预编译处理注解机制
原创 2022-11-04 20:49:33
113阅读
概述 一般使用EventBus的组件类,类似下面这种方式: 大多情况下,都会在onCreate中进行register,在onDestory中进行unregister ; 代码中以onEvent开头的方法的作用? register(this)就是去当前类,遍历所有的方法,找到onEvent开头的然后进
原创 2021-08-13 10:45:09
64阅读
FragmentManagerViewModel与Fragment的ViewModel现在FragmentManagerViewModel可以在Activity重建时恢复,那么它和Fragment里的ViewModel又是如何关联的呢?FragmentManagerViewModel 里有个成员变量: private final HashMap<String, ViewModelStore&
第一步我们要在Mob官网注册账号然后下载SDK 在这里介绍两种手机验证码的形式一种是封装好的activit试图一种是自定义的试图 将以上文件按需放入Android Studio项目所要使用SMSSDK的Module所在的Libs里面: 2.2、在Module的build.gradle里面将libs加入仓库(repositories): repositories{ fl
转载 8月前
24阅读
鸿蒙有EventBus吗? EventBus是一种常用的发布-订阅事件总线库,它可以简化Android应用程序中的组件之间的通信。但是,鸿蒙系统与Android系统有所不同,因此是否有EventBus库可用是一个值得探讨的问题。 首先,让我们来了解一下EventBus的基本概念和用法。 EventBus是一种基于发布-订阅模式的事件总线库,它允许不同组件(如Activity、Fragment
原创 2024-01-15 21:56:34
404阅读
概述 EventBus定义:是一个发布 / 订阅的事件总线。 这么说应该包含4个成分:发布者,订阅者,事件,总线。
原创 2021-08-13 10:30:07
254阅读
main.js中 new Vue({ router, store, data: { eventHub: new Vue() }, render: h => h(App), watch: { '$route.path': function(newVal, oldVal) { const userId
原创 2022-04-21 11:54:00
98阅读
Android安全机制分析Android系统是基于Linux内核开发的,因此,Android系统不仅保留和继承了Linux操作系统的安全机制,而且其系统架构的各个层次都有独特的安全特性[2] 。 1. Linux内核层安全机制Android的Linux内核包含了强制访问控制机制和自主访问控制机制。强制访问控制机制由Linux安全模块来实现,但Google出于某种原因,并没有将LSM编译进Andro
转载 2023-07-03 13:58:07
117阅读
# 理解Android机制的流程与实现 作为一名初入开发领域的小白,你可能对Android的工作机制感到困惑。在这篇文章中,我们将逐步拆解Android应用的基本框架,并通过代码示例让你更好地理解。在实际开发中,整个应用的流程可以简化为以下几个步骤。 ## Android应用开发流程 | 步骤 | 描述
原创 2024-09-24 07:46:04
13阅读
文章目录1、简介2、原理分析2.1 原理概述2.2 原理简图2.3 Handler2.3.1 Handler初始化2.3.2 Handler发送消息2.3.3 Handler处理消息2.4 looper2.4.1 looper的用途2.4.2 looper初始化与获取方式2.4.2 looper的运行流程2.5、ThreadLocal2.5.1 作用2.5.2 looper中ThreadLoca
转载 2023-07-26 20:07:28
1540阅读
简介: Android Build 系统是用来编译 Android 系统,Android SDK 以及相关文档的一套框架。众所周知,Android 是一个开源的操作系统。Android 的源码中包含了许许多多的模块。 不同产商的不同设备对于 Android 系统的定制都是不一样的。如何将这些模块统一管理起来,如何能够在不同的操作系统上进行编译,如何在编译时能够支持面向不同的硬件设备,不
转载 2023-10-07 18:28:28
66阅读
  • 1
  • 2
  • 3
  • 4
  • 5