不積跬步無以至千里
一.前摘
在使用手機時,你會發現來了一條懸浮通知,然後上滑此懸浮通知消失,當你再接收到此懸浮通知時,但是並沒有顯示懸浮通知,其實細心的能發現過一會就能恢復了,其實你想想這也是合理的,目前你着急把這個懸浮通知上滑了,肯定是此時不想被打擾啊,過一段時間後我再讓你能看見它,合情合理。
二.正文
其實這裏是進入了一種模式:小睡模式(snooze),然後進入這種模式後則會不再顯示懸浮通知了,過段時間就會把這個包名的名單清楚掉,我們這裏通過邏輯講一下吧。
1.獲取是否爲小睡模式的通知
①.判斷通知是否爲懸浮通知
代碼路徑:
app/src/com/android/systemui/statusbar/NotificationEntryManager.java
public boolean shouldPeek(NotificationData.Entry entry, StatusBarNotification sbn) {
if (!mUseHeadsUp || mPresenter.isDeviceInVrMode()) {
if (DEBUG) Log.d(TAG, "No peeking: no huns or vr mode");
return false;
}