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

Commit d86cbcc9 authored by Milton Wu's avatar Milton Wu
Browse files

Add dump info for biometrics auth dialog

Add dump info under AuthController for dumpsys command
adb shell dumpsys activity service com.android.systemui

Bug: 232723342
Test: atest AuthContainerViewTest AuthControllerTest
Change-Id: I4fdeaf0c47f4e3bb6ca381b7c295dddcce8900a9
parent 1f9957c7
Loading
Loading
Loading
Loading
+33 −0
Original line number Diff line number Diff line
@@ -61,6 +61,7 @@ import com.android.systemui.dagger.qualifiers.Background;
import com.android.systemui.keyguard.WakefulnessLifecycle;
import com.android.systemui.util.concurrency.DelayableExecutor;

import java.io.PrintWriter;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.HashSet;
@@ -739,4 +740,36 @@ public class AuthContainerView extends LinearLayout
        lp.token = windowToken;
        return lp;
    }

    @Override
    public void dump(@NonNull PrintWriter pw, @NonNull String[] args) {
        pw.println("    isAttachedToWindow=" + isAttachedToWindow());
        pw.println("    containerState=" + mContainerState);
        pw.println("    pendingCallbackReason=" + mPendingCallbackReason);
        pw.println("    config exist=" + (mConfig != null));
        if (mConfig != null) {
            pw.println("    config.sensorIds exist=" + (mConfig.mSensorIds != null));
        }
        final AuthBiometricView biometricView = mBiometricView;
        pw.println("    scrollView=" + findViewById(R.id.biometric_scrollview));
        pw.println("      biometricView=" + biometricView);
        if (biometricView != null) {
            int[] ids = {
                    R.id.title,
                    R.id.subtitle,
                    R.id.description,
                    R.id.biometric_icon_frame,
                    R.id.biometric_icon,
                    R.id.indicator,
                    R.id.button_bar,
                    R.id.button_negative,
                    R.id.button_use_credential,
                    R.id.button_confirm,
                    R.id.button_try_again
            };
            for (final int id: ids) {
                pw.println("        " + biometricView.findViewById(id));
            }
        }
    }
}
+16 −0
Original line number Diff line number Diff line
@@ -75,6 +75,7 @@ import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.util.concurrency.DelayableExecutor;
import com.android.systemui.util.concurrency.Execution;

import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
@@ -1044,6 +1045,21 @@ public class AuthController extends CoreStartable implements CommandQueue.Callba
                        userManager, lockPatternUtils);
    }

    @Override
    public void dump(@NonNull PrintWriter pw, @NonNull String[] args) {
        final AuthDialog dialog = mCurrentDialog;
        pw.println("  stableDisplaySize=" + mStableDisplaySize);
        pw.println("  faceAuthSensorLocation=" + mFaceAuthSensorLocation);
        pw.println("  fingerprintLocation=" + mFingerprintLocation);
        pw.println("  udfpsBounds=" + mUdfpsBounds);
        pw.println("  allFingerprintAuthenticatorsRegistered="
                + mAllFingerprintAuthenticatorsRegistered);
        pw.println("  currentDialog=" + dialog);
        if (dialog != null) {
            dialog.dump(pw, args);
        }
    }

    /**
     * Provides a float that represents the resolution scale(if the controller is for UDFPS).
     */
+3 −1
Original line number Diff line number Diff line
@@ -23,13 +23,15 @@ import android.hardware.biometrics.BiometricAuthenticator.Modality;
import android.os.Bundle;
import android.view.WindowManager;

import com.android.systemui.Dumpable;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

/**
 * Interface for the biometric dialog UI.
 */
public interface AuthDialog {
public interface AuthDialog extends Dumpable {

    String KEY_CONTAINER_GOING_AWAY = "container_going_away";
    String KEY_BIOMETRIC_SHOWING = "biometric_showing";