Loading src/com/android/launcher3/logging/UserEventDispatcher.java +8 −3 Original line number Original line Diff line number Diff line Loading @@ -427,10 +427,16 @@ public class UserEventDispatcher implements ResourceBasedOverride { mAppOrTaskLaunch = false; mAppOrTaskLaunch = false; ev.elapsedContainerMillis = SystemClock.uptimeMillis() - mElapsedContainerMillis; ev.elapsedContainerMillis = SystemClock.uptimeMillis() - mElapsedContainerMillis; ev.elapsedSessionMillis = SystemClock.uptimeMillis() - mElapsedSessionMillis; ev.elapsedSessionMillis = SystemClock.uptimeMillis() - mElapsedSessionMillis; if (!IS_VERBOSE) { if (!IS_VERBOSE) { return; return; } } Log.d(TAG, generateLog(ev)); } /** * Returns a human-readable log for given user event. */ public static String generateLog(LauncherEvent ev) { String log = "\n-----------------------------------------------------" String log = "\n-----------------------------------------------------" + "\naction:" + LoggerUtils.getActionStr(ev.action); + "\naction:" + LoggerUtils.getActionStr(ev.action); if (ev.srcTarget != null && ev.srcTarget.length > 0) { if (ev.srcTarget != null && ev.srcTarget.length > 0) { Loading @@ -445,8 +451,7 @@ public class UserEventDispatcher implements ResourceBasedOverride { ev.elapsedSessionMillis, ev.elapsedSessionMillis, ev.actionDurationMillis); ev.actionDurationMillis); log += "\n\n"; log += "\n\n"; Log.d(TAG, log); return log; return; } } private static String getTargetsStr(Target[] targets) { private static String getTargetsStr(Target[] targets) { Loading src_plugins/com/android/systemui/plugins/UserEventPlugin.java 0 → 100644 +34 −0 Original line number Original line Diff line number Diff line /* * Copyright (C) 2019 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.plugins; import com.android.systemui.plugins.annotations.ProvidesInterface; /** * Implement this plugin interface to access user event log on the device for prototype purpose. * NOTE: plugin is for internal prototype only and is not visible in production environment. */ @ProvidesInterface(action = UserEventPlugin.ACTION, version = UserEventPlugin.VERSION) public interface UserEventPlugin extends Plugin { String ACTION = "com.android.launcher3.action.PLUGIN_USER_EVENT_LOG"; int VERSION = 1; /** * Callback to be triggered whenever an user event occurs. */ void onUserEvent(Object event); } Loading
src/com/android/launcher3/logging/UserEventDispatcher.java +8 −3 Original line number Original line Diff line number Diff line Loading @@ -427,10 +427,16 @@ public class UserEventDispatcher implements ResourceBasedOverride { mAppOrTaskLaunch = false; mAppOrTaskLaunch = false; ev.elapsedContainerMillis = SystemClock.uptimeMillis() - mElapsedContainerMillis; ev.elapsedContainerMillis = SystemClock.uptimeMillis() - mElapsedContainerMillis; ev.elapsedSessionMillis = SystemClock.uptimeMillis() - mElapsedSessionMillis; ev.elapsedSessionMillis = SystemClock.uptimeMillis() - mElapsedSessionMillis; if (!IS_VERBOSE) { if (!IS_VERBOSE) { return; return; } } Log.d(TAG, generateLog(ev)); } /** * Returns a human-readable log for given user event. */ public static String generateLog(LauncherEvent ev) { String log = "\n-----------------------------------------------------" String log = "\n-----------------------------------------------------" + "\naction:" + LoggerUtils.getActionStr(ev.action); + "\naction:" + LoggerUtils.getActionStr(ev.action); if (ev.srcTarget != null && ev.srcTarget.length > 0) { if (ev.srcTarget != null && ev.srcTarget.length > 0) { Loading @@ -445,8 +451,7 @@ public class UserEventDispatcher implements ResourceBasedOverride { ev.elapsedSessionMillis, ev.elapsedSessionMillis, ev.actionDurationMillis); ev.actionDurationMillis); log += "\n\n"; log += "\n\n"; Log.d(TAG, log); return log; return; } } private static String getTargetsStr(Target[] targets) { private static String getTargetsStr(Target[] targets) { Loading
src_plugins/com/android/systemui/plugins/UserEventPlugin.java 0 → 100644 +34 −0 Original line number Original line Diff line number Diff line /* * Copyright (C) 2019 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.plugins; import com.android.systemui.plugins.annotations.ProvidesInterface; /** * Implement this plugin interface to access user event log on the device for prototype purpose. * NOTE: plugin is for internal prototype only and is not visible in production environment. */ @ProvidesInterface(action = UserEventPlugin.ACTION, version = UserEventPlugin.VERSION) public interface UserEventPlugin extends Plugin { String ACTION = "com.android.launcher3.action.PLUGIN_USER_EVENT_LOG"; int VERSION = 1; /** * Callback to be triggered whenever an user event occurs. */ void onUserEvent(Object event); }