summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/java/com/android/internal/logging/UiEventLogger.java8
-rw-r--r--core/java/com/android/internal/logging/UiEventLoggerImpl.java11
-rw-r--r--core/java/com/android/internal/logging/testing/UiEventLoggerFake.java5
3 files changed, 21 insertions, 3 deletions
diff --git a/core/java/com/android/internal/logging/UiEventLogger.java b/core/java/com/android/internal/logging/UiEventLogger.java
index 2f4a14fad2ee..5378b03fe1c5 100644
--- a/core/java/com/android/internal/logging/UiEventLogger.java
+++ b/core/java/com/android/internal/logging/UiEventLogger.java
@@ -58,6 +58,14 @@ public interface UiEventLogger {
void log(@NonNull UiEventEnum event);
/**
+ * Log a simple event with an instance id, without package information.
+ * Does nothing if event.getId() <= 0.
+ * @param event an enum implementing UiEventEnum interface.
+ * @param instance An identifier obtained from an InstanceIdSequence. If null, reduces to log().
+ */
+ void log(@NonNull UiEventEnum event, @Nullable InstanceId instance);
+
+ /**
* Log an event with package information. Does nothing if event.getId() <= 0.
* Give both uid and packageName if both are known, but one may be omitted if unknown.
* @param event an enum implementing UiEventEnum interface.
diff --git a/core/java/com/android/internal/logging/UiEventLoggerImpl.java b/core/java/com/android/internal/logging/UiEventLoggerImpl.java
index c0f44a5eb39b..983e0fe6144e 100644
--- a/core/java/com/android/internal/logging/UiEventLoggerImpl.java
+++ b/core/java/com/android/internal/logging/UiEventLoggerImpl.java
@@ -42,16 +42,21 @@ public class UiEventLoggerImpl implements UiEventLogger {
}
@Override
+ public void log(UiEventEnum event, InstanceId instanceId) {
+ logWithInstanceId(event, 0, null, instanceId);
+ }
+
+ @Override
public void logWithInstanceId(UiEventEnum event, int uid, String packageName,
InstanceId instance) {
final int eventID = event.getId();
- if ((eventID > 0) && (instance != null)) {
+ if ((eventID > 0) && (instance != null)) {
FrameworkStatsLog.write(FrameworkStatsLog.UI_EVENT_REPORTED,
/* event_id = 1 */ eventID,
/* uid = 2 */ uid,
/* package_name = 3 */ packageName,
/* instance_id = 4 */ instance.getId());
- } else {
+ } else if (eventID > 0) {
log(event, uid, packageName);
}
}
@@ -78,7 +83,7 @@ public class UiEventLoggerImpl implements UiEventLogger {
/* package_name = 2 */ packageName,
/* instance_id = 3 */ instance.getId(),
/* position_picked = 4 */ position);
- } else {
+ } else if ((eventID > 0)) {
logWithPosition(event, uid, packageName, position);
}
}
diff --git a/core/java/com/android/internal/logging/testing/UiEventLoggerFake.java b/core/java/com/android/internal/logging/testing/UiEventLoggerFake.java
index 2d09434807a6..e303890c245a 100644
--- a/core/java/com/android/internal/logging/testing/UiEventLoggerFake.java
+++ b/core/java/com/android/internal/logging/testing/UiEventLoggerFake.java
@@ -88,6 +88,11 @@ public class UiEventLoggerFake implements UiEventLogger {
}
@Override
+ public void log(UiEventEnum event, InstanceId instance) {
+ logWithInstanceId(event, 0, null, instance);
+ }
+
+ @Override
public void log(UiEventEnum event, int uid, String packageName) {
final int eventId = event.getId();
if (eventId > 0) {