在Android中,当可见性发生变化时,如何通知壁纸服务? 我已经通过了AOSP代码,但我无法弄明白。
我想它应该是WindowManagerService,任何人都可以澄清吗?
由于
答案 0 :(得分:0)
WallpaperService.Engine.onVisibilityChanged(boolean)
收到此信息:
通知您墙纸变得可见或隐藏。 壁纸在可见时仅使用CPU非常重要。
此方法通过从Android系统发送到保存用于显示动态壁纸的表面的活动的消息间接调用。在版本5.1.0 r1
中,它的消息代码为
private static final int MSG_VISIBILITY_CHANGED = 10010;
此消息被实施IWallpaperEngineWrapper
的{{1}}内部类WallpaperService
截获。
只需将com.android.internal.os.HandlerCaller.Callback
添加到您的实施中,然后看看自己。