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

Commit 776e0dae authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Add additional information to virtualdevice dumpsys" into main

parents fda3324f a161f8b9
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import android.companion.virtual.IVirtualDeviceActivityListener;
import android.companion.virtual.IVirtualDeviceSoundEffectListener;
import android.companion.virtual.VirtualDevice;
import android.companion.virtual.VirtualDeviceParams;
import android.content.AttributionSource;
import android.hardware.display.IVirtualDisplayCallback;
import android.hardware.display.VirtualDisplayConfig;

@@ -46,7 +47,7 @@ interface IVirtualDeviceManager {
     */
    @EnforcePermission("CREATE_VIRTUAL_DEVICE")
    IVirtualDevice createVirtualDevice(
            in IBinder token, String packageName, int associationId,
            in IBinder token, in AttributionSource attributionSource, int associationId,
            in VirtualDeviceParams params, in IVirtualDeviceActivityListener activityListener,
            in IVirtualDeviceSoundEffectListener soundEffectListener);

+1 −1
Original line number Diff line number Diff line
@@ -145,7 +145,7 @@ public class VirtualDeviceInternal {
        mContext = context.getApplicationContext();
        mVirtualDevice = service.createVirtualDevice(
                new Binder(),
                mContext.getPackageName(),
                mContext.getAttributionSource(),
                associationId,
                params,
                mActivityListenerBinder,
+21 −0
Original line number Diff line number Diff line
@@ -43,6 +43,7 @@ import android.util.ArraySet;
import android.util.SparseArray;
import android.util.SparseIntArray;

import java.io.PrintWriter;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@@ -501,6 +502,26 @@ public final class VirtualDeviceParams implements Parcelable {
                + ")";
    }

    /**
     * Dumps debugging information about the VirtualDeviceParams
     * @hide
     */
    public void dump(PrintWriter pw, String prefix) {
        pw.println(prefix + "mName=" + mName);
        pw.println(prefix + "mLockState=" + mLockState);
        pw.println(prefix + "mUsersWithMatchingAccounts=" + mUsersWithMatchingAccounts);
        pw.println(prefix + "mAllowedCrossTaskNavigations=" + mAllowedCrossTaskNavigations);
        pw.println(prefix + "mBlockedCrossTaskNavigations=" + mBlockedCrossTaskNavigations);
        pw.println(prefix + "mAllowedActivities=" + mAllowedActivities);
        pw.println(prefix + "mBlockedActivities=" + mBlockedActivities);
        pw.println(prefix + "mDevicePolicies=" + mDevicePolicies);
        pw.println(prefix + "mDefaultNavigationPolicy=" + mDefaultNavigationPolicy);
        pw.println(prefix + "mDefaultActivityPolicy=" + mDefaultActivityPolicy);
        pw.println(prefix + "mVirtualSensorConfigs=" + mVirtualSensorConfigs);
        pw.println(prefix + "mAudioPlaybackSessionId=" + mAudioPlaybackSessionId);
        pw.println(prefix + "mAudioRecordingSessionId=" + mAudioRecordingSessionId);
    }

    @NonNull
    public static final Parcelable.Creator<VirtualDeviceParams> CREATOR =
            new Parcelable.Creator<VirtualDeviceParams>() {
+5 −0
Original line number Diff line number Diff line
@@ -104,6 +104,11 @@ public final class VirtualSensorConfig implements Parcelable {
        parcel.writeInt(mFlags);
    }

    @Override
    public String toString() {
        return "VirtualSensorConfig{" + "mType=" + mType + ", mName='" + mName + '\'' + '}';
    }

    /**
     * Returns the type of the sensor.
     *
+11 −6
Original line number Diff line number Diff line
@@ -43,6 +43,7 @@ import android.companion.virtual.audio.IAudioConfigChangedCallback;
import android.companion.virtual.audio.IAudioRoutingCallback;
import android.companion.virtual.sensor.VirtualSensor;
import android.companion.virtual.sensor.VirtualSensorEvent;
import android.content.AttributionSource;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
@@ -125,6 +126,7 @@ final class VirtualDeviceImpl extends IVirtualDevice.Stub
    private final VirtualDeviceManagerService mService;
    private final PendingTrampolineCallback mPendingTrampolineCallback;
    private final int mOwnerUid;
    private final String mOwnerPackageName;
    private int mDeviceId;
    private @Nullable String mPersistentDeviceId;
    // Thou shall not hold the mVirtualDeviceLock over the mInputController calls.
@@ -196,7 +198,7 @@ final class VirtualDeviceImpl extends IVirtualDevice.Stub
            AssociationInfo associationInfo,
            VirtualDeviceManagerService service,
            IBinder token,
            int ownerUid,
            AttributionSource attributionSource,
            int deviceId,
            CameraAccessController cameraAccessController,
            PendingTrampolineCallback pendingTrampolineCallback,
@@ -209,7 +211,7 @@ final class VirtualDeviceImpl extends IVirtualDevice.Stub
                associationInfo,
                service,
                token,
                ownerUid,
                attributionSource,
                deviceId,
                /* inputController= */ null,
                cameraAccessController,
@@ -227,7 +229,7 @@ final class VirtualDeviceImpl extends IVirtualDevice.Stub
            AssociationInfo associationInfo,
            VirtualDeviceManagerService service,
            IBinder token,
            int ownerUid,
            AttributionSource attributionSource,
            int deviceId,
            InputController inputController,
            CameraAccessController cameraAccessController,
@@ -238,7 +240,8 @@ final class VirtualDeviceImpl extends IVirtualDevice.Stub
            VirtualDeviceParams params,
            DisplayManagerGlobal displayManager) {
        super(PermissionEnforcer.fromContext(context));
        UserHandle ownerUserHandle = UserHandle.getUserHandleForUid(ownerUid);
        mOwnerPackageName = attributionSource.getPackageName();
        UserHandle ownerUserHandle = UserHandle.getUserHandleForUid(attributionSource.getUid());
        mContext = context.createContextAsUser(ownerUserHandle, 0);
        mAssociationInfo = associationInfo;
        mPersistentDeviceId = PERSISTENT_ID_PREFIX_CDM_ASSOCIATION + associationInfo.getId();
@@ -247,7 +250,7 @@ final class VirtualDeviceImpl extends IVirtualDevice.Stub
        mActivityListener = activityListener;
        mSoundEffectListener = soundEffectListener;
        mRunningAppsChangedCallback = runningAppsChangedCallback;
        mOwnerUid = ownerUid;
        mOwnerUid = attributionSource.getUid();
        mDeviceId = deviceId;
        mAppToken = token;
        mParams = params;
@@ -771,7 +774,9 @@ final class VirtualDeviceImpl extends IVirtualDevice.Stub
        fout.println("  VirtualDevice: ");
        fout.println("    mDeviceId: " + mDeviceId);
        fout.println("    mAssociationId: " + mAssociationInfo.getId());
        fout.println("    mParams: " + mParams);
        fout.println("    mOwnerPackageName: " + mOwnerPackageName);
        fout.println("    mParams: ");
        mParams.dump(fout, "        ");
        fout.println("    mVirtualDisplayIds: ");
        synchronized (mVirtualDeviceLock) {
            for (int i = 0; i < mVirtualDisplays.size(); i++) {
Loading