Loading core/java/android/view/autofill/AutofillManager.java +8 −1 Original line number Diff line number Diff line Loading @@ -468,7 +468,8 @@ public final class AutofillManager { COMMIT_REASON_ACTIVITY_FINISHED, COMMIT_REASON_VIEW_COMMITTED, COMMIT_REASON_VIEW_CLICKED, COMMIT_REASON_VIEW_CHANGED COMMIT_REASON_VIEW_CHANGED, COMMIT_REASON_SESSION_DESTROYED }) @Retention(RetentionPolicy.SOURCE) public @interface AutofillCommitReason {} Loading Loading @@ -507,6 +508,12 @@ public final class AutofillManager { * @hide */ public static final int COMMIT_REASON_VIEW_CHANGED = 4; /** * Autofill context was committed because of the session was destroyed. * * @hide */ public static final int COMMIT_REASON_SESSION_DESTROYED = 5; /** * Makes an authentication id from a request id and a dataset id. Loading services/autofill/java/com/android/server/autofill/Session.java +18 −10 Original line number Diff line number Diff line Loading @@ -42,6 +42,7 @@ import static android.view.autofill.AutofillManager.ACTION_START_SESSION; import static android.view.autofill.AutofillManager.ACTION_VALUE_CHANGED; import static android.view.autofill.AutofillManager.ACTION_VIEW_ENTERED; import static android.view.autofill.AutofillManager.ACTION_VIEW_EXITED; import static android.view.autofill.AutofillManager.COMMIT_REASON_SESSION_DESTROYED; import static android.view.autofill.AutofillManager.COMMIT_REASON_UNKNOWN; import static android.view.autofill.AutofillManager.FLAG_SMART_SUGGESTION_SYSTEM; import static android.view.autofill.AutofillManager.getSmartSuggestionModeToString; Loading Loading @@ -85,7 +86,6 @@ import static com.android.server.autofill.SaveEventLogger.SAVE_UI_SHOWN_REASON_O import static com.android.server.autofill.SaveEventLogger.SAVE_UI_SHOWN_REASON_REQUIRED_ID_CHANGE; import static com.android.server.autofill.SaveEventLogger.SAVE_UI_SHOWN_REASON_TRIGGER_ID_SET; import static com.android.server.autofill.SaveEventLogger.SAVE_UI_SHOWN_REASON_UNKNOWN; import static com.android.server.autofill.SessionCommittedEventLogger.COMMIT_REASON_SESSION_DESTROYED; import static com.android.server.wm.ActivityTaskManagerInternal.ASSIST_KEY_RECEIVER_EXTRAS; import static com.android.server.wm.ActivityTaskManagerInternal.ASSIST_KEY_STRUCTURE; Loading Loading @@ -2730,6 +2730,7 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState mHandler.sendMessage(obtainMessage(Session::handleLogContextCommitted, this, Event.NO_SAVE_UI_REASON_NONE, COMMIT_REASON_UNKNOWN)); logAllEvents(COMMIT_REASON_UNKNOWN); } /** Loading @@ -2743,6 +2744,7 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState @AutofillCommitReason int commitReason) { mHandler.sendMessage(obtainMessage(Session::handleLogContextCommitted, this, saveDialogNotShowReason, commitReason)); logAllEvents(commitReason); } private void handleLogContextCommitted(@NoSaveReason int saveDialogNotShowReason, Loading Loading @@ -2974,6 +2976,7 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState changedFieldIds, changedDatasetIds, manuallyFilledFieldIds, manuallyFilledDatasetIds, detectedFieldIds, detectedFieldClassifications, mComponentName, mCompatMode, saveDialogNotShowReason); logAllEvents(commitReason); } /** Loading Loading @@ -5679,6 +5682,19 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState } } @GuardedBy("mLock") private void logAllEvents(@AutofillCommitReason int val) { mSessionCommittedEventLogger.maybeSetCommitReason(val); mSessionCommittedEventLogger.maybeSetRequestCount(mRequestCount); mSessionCommittedEventLogger.maybeSetSessionDurationMillis( SystemClock.elapsedRealtime() - mStartTime); mFillRequestEventLogger.logAndEndEvent(); mFillResponseEventLogger.logAndEndEvent(); mPresentationStatsEventLogger.logAndEndEvent(); mSaveEventLogger.logAndEndEvent(); mSessionCommittedEventLogger.logAndEndEvent(); } /** * Destroy this session and perform any clean up work. * Loading @@ -5693,15 +5709,7 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState @GuardedBy("mLock") RemoteFillService destroyLocked() { // Log unlogged events. mSessionCommittedEventLogger.maybeSetCommitReason(COMMIT_REASON_SESSION_DESTROYED); mSessionCommittedEventLogger.maybeSetRequestCount(mRequestCount); mSessionCommittedEventLogger.maybeSetSessionDurationMillis( SystemClock.elapsedRealtime() - mStartTime); mSessionCommittedEventLogger.logAndEndEvent(); mPresentationStatsEventLogger.logAndEndEvent(); mSaveEventLogger.logAndEndEvent(); mFillResponseEventLogger.logAndEndEvent(); mFillRequestEventLogger.logAndEndEvent(); logAllEvents(COMMIT_REASON_SESSION_DESTROYED); if (mDestroyed) { return null; Loading services/autofill/java/com/android/server/autofill/SessionCommittedEventLogger.java +4 −38 Original line number Diff line number Diff line Loading @@ -16,13 +16,8 @@ package com.android.server.autofill; import static android.view.autofill.AutofillManager.COMMIT_REASON_UNKNOWN; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_ACTIVITY_FINISHED; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_SESSION_DESTROYED; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_UNKNOWN; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_VIEW_CHANGED; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_VIEW_CLICKED; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_VIEW_COMMITTED; import static com.android.server.autofill.Helper.sVerbose; import android.annotation.IntDef; Loading @@ -32,7 +27,7 @@ import android.content.pm.PackageManager; import android.provider.Settings; import android.text.TextUtils; import android.util.Slog; import android.view.autofill.AutofillManager.AutofillCommitReason; import com.android.internal.util.FrameworkStatsLog; import java.lang.annotation.Retention; Loading @@ -45,35 +40,6 @@ import java.util.Optional; public final class SessionCommittedEventLogger { private static final String TAG = "SessionCommittedEventLogger"; /** * Reasons why presentation was not shown. These are wrappers around * {@link com.android.os.AtomsProto.AutofillSessionCommitted.AutofillCommitReason}. */ @IntDef(prefix = {"COMMIT_REASON"}, value = { COMMIT_REASON_UNKNOWN, COMMIT_REASON_ACTIVITY_FINISHED, COMMIT_REASON_VIEW_COMMITTED, COMMIT_REASON_VIEW_CLICKED, COMMIT_REASON_VIEW_CHANGED, COMMIT_REASON_SESSION_DESTROYED }) @Retention(RetentionPolicy.SOURCE) public @interface CommitReason { } public static final int COMMIT_REASON_UNKNOWN = AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_UNKNOWN; public static final int COMMIT_REASON_ACTIVITY_FINISHED = AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_ACTIVITY_FINISHED; public static final int COMMIT_REASON_VIEW_COMMITTED = AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_VIEW_COMMITTED; public static final int COMMIT_REASON_VIEW_CLICKED = AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_VIEW_CLICKED; public static final int COMMIT_REASON_VIEW_CHANGED = AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_VIEW_CHANGED; public static final int COMMIT_REASON_SESSION_DESTROYED = AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_SESSION_DESTROYED; private final int mSessionId; private Optional<SessionCommittedEventInternal> mEventInternal; Loading Loading @@ -110,7 +76,7 @@ public final class SessionCommittedEventLogger { /** * Set commit_reason as long as mEventInternal presents. */ public void maybeSetCommitReason(@CommitReason int val) { public void maybeSetCommitReason(@AutofillCommitReason int val) { mEventInternal.ifPresent(event -> { event.mCommitReason = val; }); Loading Loading
core/java/android/view/autofill/AutofillManager.java +8 −1 Original line number Diff line number Diff line Loading @@ -468,7 +468,8 @@ public final class AutofillManager { COMMIT_REASON_ACTIVITY_FINISHED, COMMIT_REASON_VIEW_COMMITTED, COMMIT_REASON_VIEW_CLICKED, COMMIT_REASON_VIEW_CHANGED COMMIT_REASON_VIEW_CHANGED, COMMIT_REASON_SESSION_DESTROYED }) @Retention(RetentionPolicy.SOURCE) public @interface AutofillCommitReason {} Loading Loading @@ -507,6 +508,12 @@ public final class AutofillManager { * @hide */ public static final int COMMIT_REASON_VIEW_CHANGED = 4; /** * Autofill context was committed because of the session was destroyed. * * @hide */ public static final int COMMIT_REASON_SESSION_DESTROYED = 5; /** * Makes an authentication id from a request id and a dataset id. Loading
services/autofill/java/com/android/server/autofill/Session.java +18 −10 Original line number Diff line number Diff line Loading @@ -42,6 +42,7 @@ import static android.view.autofill.AutofillManager.ACTION_START_SESSION; import static android.view.autofill.AutofillManager.ACTION_VALUE_CHANGED; import static android.view.autofill.AutofillManager.ACTION_VIEW_ENTERED; import static android.view.autofill.AutofillManager.ACTION_VIEW_EXITED; import static android.view.autofill.AutofillManager.COMMIT_REASON_SESSION_DESTROYED; import static android.view.autofill.AutofillManager.COMMIT_REASON_UNKNOWN; import static android.view.autofill.AutofillManager.FLAG_SMART_SUGGESTION_SYSTEM; import static android.view.autofill.AutofillManager.getSmartSuggestionModeToString; Loading Loading @@ -85,7 +86,6 @@ import static com.android.server.autofill.SaveEventLogger.SAVE_UI_SHOWN_REASON_O import static com.android.server.autofill.SaveEventLogger.SAVE_UI_SHOWN_REASON_REQUIRED_ID_CHANGE; import static com.android.server.autofill.SaveEventLogger.SAVE_UI_SHOWN_REASON_TRIGGER_ID_SET; import static com.android.server.autofill.SaveEventLogger.SAVE_UI_SHOWN_REASON_UNKNOWN; import static com.android.server.autofill.SessionCommittedEventLogger.COMMIT_REASON_SESSION_DESTROYED; import static com.android.server.wm.ActivityTaskManagerInternal.ASSIST_KEY_RECEIVER_EXTRAS; import static com.android.server.wm.ActivityTaskManagerInternal.ASSIST_KEY_STRUCTURE; Loading Loading @@ -2730,6 +2730,7 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState mHandler.sendMessage(obtainMessage(Session::handleLogContextCommitted, this, Event.NO_SAVE_UI_REASON_NONE, COMMIT_REASON_UNKNOWN)); logAllEvents(COMMIT_REASON_UNKNOWN); } /** Loading @@ -2743,6 +2744,7 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState @AutofillCommitReason int commitReason) { mHandler.sendMessage(obtainMessage(Session::handleLogContextCommitted, this, saveDialogNotShowReason, commitReason)); logAllEvents(commitReason); } private void handleLogContextCommitted(@NoSaveReason int saveDialogNotShowReason, Loading Loading @@ -2974,6 +2976,7 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState changedFieldIds, changedDatasetIds, manuallyFilledFieldIds, manuallyFilledDatasetIds, detectedFieldIds, detectedFieldClassifications, mComponentName, mCompatMode, saveDialogNotShowReason); logAllEvents(commitReason); } /** Loading Loading @@ -5679,6 +5682,19 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState } } @GuardedBy("mLock") private void logAllEvents(@AutofillCommitReason int val) { mSessionCommittedEventLogger.maybeSetCommitReason(val); mSessionCommittedEventLogger.maybeSetRequestCount(mRequestCount); mSessionCommittedEventLogger.maybeSetSessionDurationMillis( SystemClock.elapsedRealtime() - mStartTime); mFillRequestEventLogger.logAndEndEvent(); mFillResponseEventLogger.logAndEndEvent(); mPresentationStatsEventLogger.logAndEndEvent(); mSaveEventLogger.logAndEndEvent(); mSessionCommittedEventLogger.logAndEndEvent(); } /** * Destroy this session and perform any clean up work. * Loading @@ -5693,15 +5709,7 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState @GuardedBy("mLock") RemoteFillService destroyLocked() { // Log unlogged events. mSessionCommittedEventLogger.maybeSetCommitReason(COMMIT_REASON_SESSION_DESTROYED); mSessionCommittedEventLogger.maybeSetRequestCount(mRequestCount); mSessionCommittedEventLogger.maybeSetSessionDurationMillis( SystemClock.elapsedRealtime() - mStartTime); mSessionCommittedEventLogger.logAndEndEvent(); mPresentationStatsEventLogger.logAndEndEvent(); mSaveEventLogger.logAndEndEvent(); mFillResponseEventLogger.logAndEndEvent(); mFillRequestEventLogger.logAndEndEvent(); logAllEvents(COMMIT_REASON_SESSION_DESTROYED); if (mDestroyed) { return null; Loading
services/autofill/java/com/android/server/autofill/SessionCommittedEventLogger.java +4 −38 Original line number Diff line number Diff line Loading @@ -16,13 +16,8 @@ package com.android.server.autofill; import static android.view.autofill.AutofillManager.COMMIT_REASON_UNKNOWN; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_ACTIVITY_FINISHED; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_SESSION_DESTROYED; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_UNKNOWN; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_VIEW_CHANGED; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_VIEW_CLICKED; import static com.android.internal.util.FrameworkStatsLog.AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_VIEW_COMMITTED; import static com.android.server.autofill.Helper.sVerbose; import android.annotation.IntDef; Loading @@ -32,7 +27,7 @@ import android.content.pm.PackageManager; import android.provider.Settings; import android.text.TextUtils; import android.util.Slog; import android.view.autofill.AutofillManager.AutofillCommitReason; import com.android.internal.util.FrameworkStatsLog; import java.lang.annotation.Retention; Loading @@ -45,35 +40,6 @@ import java.util.Optional; public final class SessionCommittedEventLogger { private static final String TAG = "SessionCommittedEventLogger"; /** * Reasons why presentation was not shown. These are wrappers around * {@link com.android.os.AtomsProto.AutofillSessionCommitted.AutofillCommitReason}. */ @IntDef(prefix = {"COMMIT_REASON"}, value = { COMMIT_REASON_UNKNOWN, COMMIT_REASON_ACTIVITY_FINISHED, COMMIT_REASON_VIEW_COMMITTED, COMMIT_REASON_VIEW_CLICKED, COMMIT_REASON_VIEW_CHANGED, COMMIT_REASON_SESSION_DESTROYED }) @Retention(RetentionPolicy.SOURCE) public @interface CommitReason { } public static final int COMMIT_REASON_UNKNOWN = AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_UNKNOWN; public static final int COMMIT_REASON_ACTIVITY_FINISHED = AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_ACTIVITY_FINISHED; public static final int COMMIT_REASON_VIEW_COMMITTED = AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_VIEW_COMMITTED; public static final int COMMIT_REASON_VIEW_CLICKED = AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_VIEW_CLICKED; public static final int COMMIT_REASON_VIEW_CHANGED = AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_VIEW_CHANGED; public static final int COMMIT_REASON_SESSION_DESTROYED = AUTOFILL_SESSION_COMMITTED__COMMIT_REASON__COMMIT_REASON_SESSION_DESTROYED; private final int mSessionId; private Optional<SessionCommittedEventInternal> mEventInternal; Loading Loading @@ -110,7 +76,7 @@ public final class SessionCommittedEventLogger { /** * Set commit_reason as long as mEventInternal presents. */ public void maybeSetCommitReason(@CommitReason int val) { public void maybeSetCommitReason(@AutofillCommitReason int val) { mEventInternal.ifPresent(event -> { event.mCommitReason = val; }); Loading