AOSP CarSystemUI 如何监听 有应用使用了setStatusBarColor 具体代码
时间: 2024-03-20 21:43:12 浏览: 29
以下是在 `AOSP CarSystemUI` 中监听应用是否使用了 `setStatusBarColor()` 方法的代码示例:
```java
public class MyActivityLifecycleCallbacks implements Application.ActivityLifecycleCallbacks {
private int statusBarColor = Color.TRANSPARENT;
@Override
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
Window window = activity.getWindow();
if (window != null) {
statusBarColor = window.getStatusBarColor();
}
}
@Override
public void onActivityResumed(Activity activity) {
Window window = activity.getWindow();
if (window != null) {
int currentStatusBarColor = window.getStatusBarColor();
if (currentStatusBarColor != statusBarColor) {
// 应用使用了 setStatusBarColor() 方法
Log.d("StatusBarColor", "setStatusBarColor is used in " + activity.getClass().getName());
}
}
}
// 其他生命周期回调方法省略...
}
```
在 `onActivityCreated()` 方法中,我们可以获取到当前 `Activity` 的 `Window` 对象,并通过 `getStatusbarColor()` 方法获取到当前 `Activity` 的状态栏颜色。在 `onActivityResumed()` 方法中,我们可以检测当前 `Activity` 中的 `Window` 对象是否发生了变化,如果发生了变化,则说明当前 `Activity` 使用了 `setStatusBarColor()` 方法。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)