Expand visibility of projection state API so Android Auto can access it.
The PROJECTION_TYPE_* constants and re{quest,lease}Projection APIs were originally marked @TestApi and @hide, but Android Auto needs them to be part of the @SystemApi to be able to use them.
Bug: 134997071
Bug: 169702986
Test: Unit tests, tested against Android Auto
Change-Id: Id8f3fb8697726ba20ea5a2843026c2083c0bec92
This commit is contained in:
@@ -802,12 +802,17 @@ package android.app {
|
||||
method @RequiresPermission(android.Manifest.permission.ENTER_CAR_MODE_PRIORITIZED) public void enableCarMode(@IntRange(from=0) int, int);
|
||||
method @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public int getActiveProjectionTypes();
|
||||
method @NonNull @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public java.util.Set<java.lang.String> getProjectingPackages(int);
|
||||
method @RequiresPermission(value=android.Manifest.permission.TOGGLE_AUTOMOTIVE_PROJECTION, conditional=true) public boolean releaseProjection(int);
|
||||
method @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public void removeOnProjectionStateChangeListener(@NonNull android.app.UiModeManager.OnProjectionStateChangeListener);
|
||||
method @RequiresPermission(value=android.Manifest.permission.TOGGLE_AUTOMOTIVE_PROJECTION, conditional=true) public boolean requestProjection(int);
|
||||
field public static final String ACTION_ENTER_CAR_MODE_PRIORITIZED = "android.app.action.ENTER_CAR_MODE_PRIORITIZED";
|
||||
field public static final String ACTION_EXIT_CAR_MODE_PRIORITIZED = "android.app.action.EXIT_CAR_MODE_PRIORITIZED";
|
||||
field public static final int DEFAULT_PRIORITY = 0; // 0x0
|
||||
field public static final String EXTRA_CALLING_PACKAGE = "android.app.extra.CALLING_PACKAGE";
|
||||
field public static final String EXTRA_PRIORITY = "android.app.extra.PRIORITY";
|
||||
field public static final int PROJECTION_TYPE_ALL = 65535; // 0xffff
|
||||
field public static final int PROJECTION_TYPE_AUTOMOTIVE = 1; // 0x1
|
||||
field public static final int PROJECTION_TYPE_NONE = 0; // 0x0
|
||||
}
|
||||
|
||||
public static interface UiModeManager.OnProjectionStateChangeListener {
|
||||
|
||||
@@ -750,12 +750,17 @@ package android.app {
|
||||
method @RequiresPermission(android.Manifest.permission.ENTER_CAR_MODE_PRIORITIZED) public void enableCarMode(@IntRange(from=0) int, int);
|
||||
method @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public int getActiveProjectionTypes();
|
||||
method @NonNull @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public java.util.Set<java.lang.String> getProjectingPackages(int);
|
||||
method @RequiresPermission(value=android.Manifest.permission.TOGGLE_AUTOMOTIVE_PROJECTION, conditional=true) public boolean releaseProjection(int);
|
||||
method @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public void removeOnProjectionStateChangeListener(@NonNull android.app.UiModeManager.OnProjectionStateChangeListener);
|
||||
method @RequiresPermission(value=android.Manifest.permission.TOGGLE_AUTOMOTIVE_PROJECTION, conditional=true) public boolean requestProjection(int);
|
||||
field public static final String ACTION_ENTER_CAR_MODE_PRIORITIZED = "android.app.action.ENTER_CAR_MODE_PRIORITIZED";
|
||||
field public static final String ACTION_EXIT_CAR_MODE_PRIORITIZED = "android.app.action.EXIT_CAR_MODE_PRIORITIZED";
|
||||
field public static final int DEFAULT_PRIORITY = 0; // 0x0
|
||||
field public static final String EXTRA_CALLING_PACKAGE = "android.app.extra.CALLING_PACKAGE";
|
||||
field public static final String EXTRA_PRIORITY = "android.app.extra.PRIORITY";
|
||||
field public static final int PROJECTION_TYPE_ALL = 65535; // 0xffff
|
||||
field public static final int PROJECTION_TYPE_AUTOMOTIVE = 1; // 0x1
|
||||
field public static final int PROJECTION_TYPE_NONE = 0; // 0x0
|
||||
}
|
||||
|
||||
public static interface UiModeManager.OnProjectionStateChangeListener {
|
||||
|
||||
@@ -651,6 +651,7 @@ public class UiModeManager {
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@SystemApi
|
||||
@TestApi
|
||||
public static final int PROJECTION_TYPE_NONE = 0x0000;
|
||||
/**
|
||||
@@ -660,6 +661,7 @@ public class UiModeManager {
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@SystemApi
|
||||
@TestApi
|
||||
public static final int PROJECTION_TYPE_AUTOMOTIVE = 0x0001;
|
||||
/**
|
||||
@@ -669,6 +671,7 @@ public class UiModeManager {
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@SystemApi
|
||||
@TestApi
|
||||
public static final int PROJECTION_TYPE_ALL = 0xffff;
|
||||
|
||||
@@ -695,6 +698,7 @@ public class UiModeManager {
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@SystemApi
|
||||
@TestApi
|
||||
@RequiresPermission(value = android.Manifest.permission.TOGGLE_AUTOMOTIVE_PROJECTION,
|
||||
conditional = true)
|
||||
@@ -723,6 +727,7 @@ public class UiModeManager {
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@SystemApi
|
||||
@TestApi
|
||||
@RequiresPermission(value = android.Manifest.permission.TOGGLE_AUTOMOTIVE_PROJECTION,
|
||||
conditional = true)
|
||||
|
||||
Reference in New Issue
Block a user