Android SystemUI——快捷面板的创建(十四)
上一篇文章介绍了快捷面板界面 QSFragment 的创建流程,这里我们继续介绍快捷按键 QSTile 和管理 QSTile 生命周期和服务注册的 QSTileHost。
一、QSTileHost初始化
Android 9.0 以及之前的版本,实例化 QSTileHost 类是在 StatusBar 的 makeStatusBarView() 方法中。
1、StatusBar
源码位置:/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java
protected void makeStatusBarView(@Nullable RegisterStatusBarResult result) {
……
// 设置快速设置面板
final View container = mNotificationShadeWindowView.findViewById(R.id.qs_frame);
if (container != null) {
……
fragmentHostManager.addTagListener(QS.TAG, (tag, f) -> {
QS qs = (QS) f;
if (qs instanceof QSFragment) {
((QSFragment) qs).setHos