Android StatMachine
一个学渣的自我救赎
这个作者很懒,什么都没留下…
展开
-
Android13 StatMachine quitNow流程分析
调用sendMessageAtFrontOfQueue方法,将SM_QUIT_CMD消息放入到消息队列最前,这样不管当前消息队列中是否有其他消息会先处理SM_QUIT_CMD消息,之后的处理与quit相同。原创 2024-05-02 22:03:14 · 121 阅读 · 0 评论 -
Android13 StatMachine quit流程分析
2、调用performTransitions方法,消息处理完毕状态切换,更新mStateStack。1、调用processMsg方法,处理消息。将变量设置为null,quit处理完成。原创 2024-05-02 21:58:45 · 183 阅读 · 0 评论 -
Android13 StatMachine start流程分析
1、调用setupTempStateStackWithStatesToEnter方法,逐次向上查找destState的所有祖先直到该祖先的stateInfo.Active为true才停止,并将值放到mTempStateStake 里面,树根对应下标最大的,commonstateInfo为该祖先的 stateInfor属性,在这个函数里面也将mTempStateStake清空了,并重新赋值了。3、调用performTransitions方法,消息处理完毕状态切换,更新mStateStack。原创 2024-05-02 21:53:22 · 572 阅读 · 0 评论 -
Android StatMachine sendMessage流程分析
【代码】Android StatMachine sendMessage流程分析。原创 2024-05-02 21:44:31 · 110 阅读 · 0 评论 -
Android13 StatMachine obtainMessage流程分析
调用Message的obtain方法,创建一个Message。原创 2024-05-02 21:41:08 · 8 阅读 · 0 评论 -
Android13 StatMachine transitionTo流程分析
方法中并不是马上执行状态迁移操作,而是对mDestState 进行赋值,将传入的destState赋值给mDestState 变量。原创 2024-05-02 21:39:24 · 121 阅读 · 0 评论 -
Android13 StatMachine setInitialState流程分析
方法中就一个赋值,将传入的initialState赋值给mInitialState变量。原创 2024-05-02 21:37:57 · 127 阅读 · 0 评论 -
Android13 StatMachine removeState流程分析
【代码】Android13 StatMachine removeState流程分析。原创 2024-05-02 21:36:10 · 136 阅读 · 0 评论 -
Android13 StatMachine addState流程分析
为空,则说明这个state是整个状态机树结构的顶点,创建它的stateInfo对象,添加到mStateInfo这个HashMap结构中,它保持了状态机的层次结构性。2、从mStateInfo(由State, StateInfo组成的HashMap)获取传入state对应的StateInfo ,然后判断stateInfo是否为null,如果为null,则new一个StateInfo,然后将传入的state和stateInfo放入mStateInfo(由State, StateInfo组成的HashMap)。原创 2024-05-02 21:33:08 · 239 阅读 · 0 评论 -
Android13 StatMachine创建流程分析
StateMachine构造方法中创建一个HandlerThread,然后开始这个Thread。原创 2024-05-02 21:30:39 · 209 阅读 · 0 评论 -
Android StateMachine
Android 状态机的主要作用是管理状态和处理消息。它通过定义一组状态和状态之间的转换关系,来控制系统的行为。当系统接收到消息时,StateMachine会根据当前的状态和消息类型,执行相应的操作或状态转换。在使用Android 状态时,通常需要定义一组状态和状态之间的转换关系。可以使用addState()方法来添加状态,并使用addTransition()方法来定义状态之间的转换关系。原创 2024-05-02 21:28:22 · 648 阅读 · 0 评论