I'm working on writing the keyguard based on android 5.1, since keyguard service should apply to framework policy, there's one interface in IKeyguardService (in frameworks/base/core/java/com/android/internal/policy) which name is "void setOccluded(boolean isOccluded);" confused me a lot. There's a comment("Sets the Keyguard as occluded when a window dismisses the Keyguard with flag FLAG_SHOW_ON_LOCK_SCREEN. @param isOccluded Whether the Keyguard is occluded by another window.)
There are lots of codes in keyguard to check this "occlude" state, so I can't just ignore implementing this interface, so anybody can make a example in what situation is a keyguard "occluded"?