Merge changes If58bf46a,I6b378499 into udc-qpr-dev am: 9a5214d948
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/24242051 Change-Id: I700d52e0c64b68e2d8b63d089bda4431a952eec5 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -62,11 +62,12 @@ object Flags {
|
|||||||
val INSTANT_VOICE_REPLY = unreleasedFlag(111, "instant_voice_reply")
|
val INSTANT_VOICE_REPLY = unreleasedFlag(111, "instant_voice_reply")
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This flag is server-controlled and should stay as [unreleasedFlag] since we never want to
|
* This flag controls whether we register a listener for StatsD notification memory reports.
|
||||||
* enable it on release builds.
|
* For statsd to actually call the listener however, a server-side toggle needs to be
|
||||||
|
* enabled as well.
|
||||||
*/
|
*/
|
||||||
val NOTIFICATION_MEMORY_LOGGING_ENABLED =
|
val NOTIFICATION_MEMORY_LOGGING_ENABLED =
|
||||||
unreleasedFlag(119, "notification_memory_logging_enabled")
|
releasedFlag(119, "notification_memory_logging_enabled")
|
||||||
|
|
||||||
// TODO(b/260335638): Tracking Bug
|
// TODO(b/260335638): Tracking Bug
|
||||||
@JvmField
|
@JvmField
|
||||||
|
|||||||
@@ -0,0 +1,33 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2023 The Android Open Source Project
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package com.android.systemui.statusbar.notification.dagger
|
||||||
|
|
||||||
|
import com.android.systemui.CoreStartable
|
||||||
|
import com.android.systemui.statusbar.notification.logging.NotificationMemoryMonitor
|
||||||
|
import dagger.Binds
|
||||||
|
import dagger.Module
|
||||||
|
import dagger.multibindings.ClassKey
|
||||||
|
import dagger.multibindings.IntoMap
|
||||||
|
|
||||||
|
@Module
|
||||||
|
interface NotificationMemoryModule {
|
||||||
|
|
||||||
|
/** Binds memory monitor into startable map. */
|
||||||
|
@Binds
|
||||||
|
@IntoMap
|
||||||
|
@ClassKey(NotificationMemoryMonitor::class)
|
||||||
|
fun bindsNotificationMemoryMonitorStartable(monitor: NotificationMemoryMonitor): CoreStartable
|
||||||
|
}
|
||||||
@@ -39,7 +39,6 @@ import com.android.systemui.statusbar.notification.collection.notifcollection.No
|
|||||||
import com.android.systemui.statusbar.notification.collection.render.NotifStackController
|
import com.android.systemui.statusbar.notification.collection.render.NotifStackController
|
||||||
import com.android.systemui.statusbar.notification.interruption.HeadsUpViewBinder
|
import com.android.systemui.statusbar.notification.interruption.HeadsUpViewBinder
|
||||||
import com.android.systemui.statusbar.notification.logging.NotificationLogger
|
import com.android.systemui.statusbar.notification.logging.NotificationLogger
|
||||||
import com.android.systemui.statusbar.notification.logging.NotificationMemoryMonitor
|
|
||||||
import com.android.systemui.statusbar.notification.row.NotifBindPipelineInitializer
|
import com.android.systemui.statusbar.notification.row.NotifBindPipelineInitializer
|
||||||
import com.android.systemui.statusbar.notification.stack.NotificationListContainer
|
import com.android.systemui.statusbar.notification.stack.NotificationListContainer
|
||||||
import com.android.wm.shell.bubbles.Bubbles
|
import com.android.wm.shell.bubbles.Bubbles
|
||||||
@@ -72,7 +71,6 @@ class NotificationsControllerImpl @Inject constructor(
|
|||||||
private val peopleSpaceWidgetManager: PeopleSpaceWidgetManager,
|
private val peopleSpaceWidgetManager: PeopleSpaceWidgetManager,
|
||||||
private val bubblesOptional: Optional<Bubbles>,
|
private val bubblesOptional: Optional<Bubbles>,
|
||||||
private val fgsNotifListener: ForegroundServiceNotificationListener,
|
private val fgsNotifListener: ForegroundServiceNotificationListener,
|
||||||
private val memoryMonitor: Lazy<NotificationMemoryMonitor>,
|
|
||||||
private val featureFlags: FeatureFlags
|
private val featureFlags: FeatureFlags
|
||||||
) : NotificationsController {
|
) : NotificationsController {
|
||||||
|
|
||||||
@@ -108,7 +106,6 @@ class NotificationsControllerImpl @Inject constructor(
|
|||||||
notificationLogger.setUpWithContainer(listContainer)
|
notificationLogger.setUpWithContainer(listContainer)
|
||||||
peopleSpaceWidgetManager.attach(notificationListener)
|
peopleSpaceWidgetManager.attach(notificationListener)
|
||||||
fgsNotifListener.init()
|
fgsNotifListener.init()
|
||||||
memoryMonitor.get().init()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Convert all functions below this line into listeners instead of public methods
|
// TODO: Convert all functions below this line into listeners instead of public methods
|
||||||
|
|||||||
@@ -18,6 +18,7 @@
|
|||||||
package com.android.systemui.statusbar.notification.logging
|
package com.android.systemui.statusbar.notification.logging
|
||||||
|
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
|
import com.android.systemui.CoreStartable
|
||||||
import com.android.systemui.dagger.SysUISingleton
|
import com.android.systemui.dagger.SysUISingleton
|
||||||
import com.android.systemui.flags.FeatureFlags
|
import com.android.systemui.flags.FeatureFlags
|
||||||
import com.android.systemui.flags.Flags
|
import com.android.systemui.flags.Flags
|
||||||
@@ -32,13 +33,13 @@ constructor(
|
|||||||
private val featureFlags: FeatureFlags,
|
private val featureFlags: FeatureFlags,
|
||||||
private val notificationMemoryDumper: NotificationMemoryDumper,
|
private val notificationMemoryDumper: NotificationMemoryDumper,
|
||||||
private val notificationMemoryLogger: Lazy<NotificationMemoryLogger>,
|
private val notificationMemoryLogger: Lazy<NotificationMemoryLogger>,
|
||||||
) {
|
) : CoreStartable {
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
private const val TAG = "NotificationMemory"
|
private const val TAG = "NotificationMemory"
|
||||||
}
|
}
|
||||||
|
|
||||||
fun init() {
|
override fun start() {
|
||||||
Log.d(TAG, "NotificationMemoryMonitor initialized.")
|
Log.d(TAG, "NotificationMemoryMonitor initialized.")
|
||||||
notificationMemoryDumper.init()
|
notificationMemoryDumper.init()
|
||||||
if (featureFlags.isEnabled(Flags.NOTIFICATION_MEMORY_LOGGING_ENABLED)) {
|
if (featureFlags.isEnabled(Flags.NOTIFICATION_MEMORY_LOGGING_ENABLED)) {
|
||||||
|
|||||||
Reference in New Issue
Block a user