Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d94881b8 authored by Kweku Adams's avatar Kweku Adams
Browse files

Reduce handler message spam.

Skip posting a message to the handler for events that aren't going to be
processed.

Bug: 141645789
Bug: 273758274
Test: atest FrameworksMockingServicesTests:QuotaControllerTest
Change-Id: I9ed4da14aa33e66340f6573ad7f15763458ec5a9
parent 8a5ee58d
Loading
Loading
Loading
Loading
+19 −1
Original line number Diff line number Diff line
@@ -2549,7 +2549,25 @@ public final class QuotaController extends StateController {
         */
        @Override
        public void onUsageEvent(int userId, @NonNull UsageEvents.Event event) {
            mHandler.obtainMessage(MSG_PROCESS_USAGE_EVENT, userId, 0, event).sendToTarget();
            // Skip posting a message to the handler for events we don't care about.
            switch (event.getEventType()) {
                case UsageEvents.Event.ACTIVITY_RESUMED:
                case UsageEvents.Event.ACTIVITY_PAUSED:
                case UsageEvents.Event.ACTIVITY_STOPPED:
                case UsageEvents.Event.ACTIVITY_DESTROYED:
                case UsageEvents.Event.USER_INTERACTION:
                case UsageEvents.Event.CHOOSER_ACTION:
                case UsageEvents.Event.NOTIFICATION_INTERRUPTION:
                case UsageEvents.Event.NOTIFICATION_SEEN:
                    mHandler.obtainMessage(MSG_PROCESS_USAGE_EVENT, userId, 0, event)
                            .sendToTarget();
                    break;
                default:
                    if (DEBUG) {
                        Slog.d(TAG, "Dropping event " + event.getEventType());
                    }
                    break;
            }
        }
    }

+19 −2
Original line number Diff line number Diff line
@@ -316,8 +316,25 @@ public class InternalResourceService extends SystemService {
                 */
                @Override
                public void onUsageEvent(int userId, @NonNull UsageEvents.Event event) {
                    // Skip posting a message to the handler for events we don't care about.
                    switch (event.getEventType()) {
                        case UsageEvents.Event.ACTIVITY_RESUMED:
                        case UsageEvents.Event.ACTIVITY_PAUSED:
                        case UsageEvents.Event.ACTIVITY_STOPPED:
                        case UsageEvents.Event.ACTIVITY_DESTROYED:
                        case UsageEvents.Event.USER_INTERACTION:
                        case UsageEvents.Event.CHOOSER_ACTION:
                        case UsageEvents.Event.NOTIFICATION_INTERRUPTION:
                        case UsageEvents.Event.NOTIFICATION_SEEN:
                            mHandler.obtainMessage(MSG_PROCESS_USAGE_EVENT, userId, 0, event)
                                    .sendToTarget();
                            break;
                        default:
                            if (DEBUG) {
                                Slog.d(TAG, "Dropping event " + event.getEventType());
                            }
                            break;
                    }
                }
            };