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

Commit d4b0c0a0 authored by Jared Finder's avatar Jared Finder
Browse files

Adding XR software and hardware feature strings

Bug: 364416355
Change-Id: I1d95699f8b0292ccc3b00eff9e5aeaf90b0ce0c2
Flag: android.xr.xr_manifest_entries
Test: Checked that project still built.
parent 4a87d601
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -13372,6 +13372,11 @@ package android.content.pm {
    field public static final String FEATURE_WIFI_PASSPOINT = "android.hardware.wifi.passpoint";
    field public static final String FEATURE_WIFI_RTT = "android.hardware.wifi.rtt";
    field public static final String FEATURE_WINDOW_MAGNIFICATION = "android.software.window_magnification";
    field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_API_OPENXR = "android.software.xr.api.openxr";
    field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_API_SPATIAL = "android.software.xr.api.spatial";
    field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_INPUT_CONTROLLER = "android.hardware.xr.input.controller";
    field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_INPUT_EYE_TRACKING = "android.hardware.xr.input.eye_tracking";
    field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_INPUT_HAND_TRACKING = "android.hardware.xr.input.hand_tracking";
    field public static final int FLAG_PERMISSION_WHITELIST_INSTALLER = 2; // 0x2
    field public static final int FLAG_PERMISSION_WHITELIST_SYSTEM = 1; // 0x1
    field public static final int FLAG_PERMISSION_WHITELIST_UPGRADE = 4; // 0x4
+58 −0
Original line number Diff line number Diff line
@@ -4863,6 +4863,64 @@ public abstract class PackageManager {
  public static final String FEATURE_CONTEXTUAL_SEARCH_HELPER =
      "android.software.contextualsearch";

    /**
     * Feature for {@link #getSystemAvailableFeatures} and {@link #hasSystemFeature}: This device
     * supports XR input from XR controllers.
     */
    @FlaggedApi(android.xr.Flags.FLAG_XR_MANIFEST_ENTRIES)
    @SdkConstant(SdkConstantType.FEATURE)
    public static final String FEATURE_XR_INPUT_CONTROLLER =
        "android.hardware.xr.input.controller";

    /**
     * Feature for {@link #getSystemAvailableFeatures} and {@link #hasSystemFeature}: This device
     * supports XR input from the user's hands.
     */
    @FlaggedApi(android.xr.Flags.FLAG_XR_MANIFEST_ENTRIES)
    @SdkConstant(SdkConstantType.FEATURE)
    public static final String FEATURE_XR_INPUT_HAND_TRACKING =
        "android.hardware.xr.input.hand_tracking";

    /**
     * Feature for {@link #getSystemAvailableFeatures} and {@link #hasSystemFeature}: This device
     * supports XR input from the user's eye gaze.
     */
    @FlaggedApi(android.xr.Flags.FLAG_XR_MANIFEST_ENTRIES)
    @SdkConstant(SdkConstantType.FEATURE)
    public static final String FEATURE_XR_INPUT_EYE_TRACKING =
        "android.hardware.xr.input.eye_tracking";

    /**
     * Feature for {@link #getSystemAvailableFeatures} and {@link #hasSystemFeature}: This device
     * supports <a href="https://www.khronos.org/openxr/">OpenXR</a>. The feature version indicates
     * the highest version of OpenXR supported by the device using the following encoding:
     * <ul>
     * <li> Major version in bits 31-16</li>
     * <li> Minor version in bits 15-0</li>
     * </ul>
     * This is the same encoding as the top 32 bits of an {@code XrVersion}.
     * <p>
     * Example: OpenXR 1.1 support is encoded as 0x00010001.
     */
    @FlaggedApi(android.xr.Flags.FLAG_XR_MANIFEST_ENTRIES)
    @SdkConstant(SdkConstantType.FEATURE)
    public static final String FEATURE_XR_API_OPENXR =
        "android.software.xr.api.openxr";

    /**
     * Feature for {@link #getSystemAvailableFeatures} and {@link #hasSystemFeature}: This device
     * supports the Android XR Spatial APIs. The feature version indicates the highest version of
     * the Android XR Spatial APIs supported by the device.
     *
     * <p>Also see <a href="https://developer.android.com/xr">Getting started with Spatializing
     * your app</a>.
     */
    // TODO(b/374330735): update public documentation once link content is finalized
    @FlaggedApi(android.xr.Flags.FLAG_XR_MANIFEST_ENTRIES)
    @SdkConstant(SdkConstantType.FEATURE)
    public static final String FEATURE_XR_API_SPATIAL =
        "android.software.xr.api.spatial";

    /** @hide */
    public static final boolean APP_ENUMERATION_ENABLED_BY_DEFAULT = true;