可以使用shared_ptr<BaseHandler>BaseHandler::FindObject(stringurl)来查找当前looper或其他looper中的组件
约定url各层次采用/分隔
此功能是通过BaseHandler里的string mObjectName来实现的
建议在类的构造函数中取有意义的名称,一般是取类名。
比如class MainLooper的mObjectName为"MainLooper";
class Board的mObjectName叫"Board";
class RtcHandler的mObjectName叫"RtcHandler";
假定如下场景
(board);
(rtc)
则可以在任何looper环境下面用
auto obj = dynamic_pointer_cast<RtcHandler>(BaseLooper::GetMainLooper()->FindObject("Board/RtcHandler"));来获取RtcHandler对象。如果是在Board里面查义,则更简单,直接用autoobj= dynamic_pointer_cast<RtcHandler>FindObject("RtcHandler"));就可以了