1// Signature format: 2.0
2package android.car {
3
4  public final class Car {
5    field public static final String CAR_DEVICE_POLICY_SERVICE = "car_device_policy_service";
6    field public static final String CAR_USER_SERVICE = "car_user_service";
7  }
8
9  public final class CarAppFocusManager {
10    method public int[] getActiveAppTypes();
11  }
12
13  public class VehiclePropertyType {
14    field public static final int BOOLEAN = 2097152; // 0x200000
15    field public static final int BYTES = 7340032; // 0x700000
16    field public static final int FLOAT = 6291456; // 0x600000
17    field public static final int FLOAT_VEC = 6356992; // 0x610000
18    field public static final int INT32 = 4194304; // 0x400000
19    field public static final int INT32_VEC = 4259840; // 0x410000
20    field public static final int INT64 = 5242880; // 0x500000
21    field public static final int INT64_VEC = 5308416; // 0x510000
22    field public static final int MASK = 16711680; // 0xff0000
23    field public static final int MIXED = 14680064; // 0xe00000
24    field public static final int STRING = 1048576; // 0x100000
25  }
26
27}
28
29package android.car.admin {
30
31  public final class CarDevicePolicyManager {
32    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public android.car.admin.CreateUserResult createUser(@Nullable String, int);
33    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public android.car.admin.RemoveUserResult removeUser(@NonNull android.os.UserHandle);
34    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public android.car.admin.StartUserInBackgroundResult startUserInBackground(@NonNull android.os.UserHandle);
35    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public android.car.admin.StopUserResult stopUser(@NonNull android.os.UserHandle);
36    field public static final int USER_TYPE_ADMIN = 1; // 0x1
37    field public static final int USER_TYPE_GUEST = 2; // 0x2
38    field public static final int USER_TYPE_REGULAR = 0; // 0x0
39  }
40
41  public final class CreateUserResult {
42    method public int getStatus();
43    method @Nullable public android.os.UserHandle getUserHandle();
44    method public boolean isSuccess();
45    field public static final int STATUS_FAILURE_GENERIC = 100; // 0x64
46    field public static final int STATUS_FAILURE_INVALID_ARGUMENTS = 2; // 0x2
47    field public static final int STATUS_SUCCESS = 1; // 0x1
48  }
49
50  public final class RemoveUserResult {
51    method public int getStatus();
52    method public boolean isSuccess();
53    field public static final int STATUS_FAILURE_GENERIC = 100; // 0x64
54    field public static final int STATUS_FAILURE_INVALID_ARGUMENTS = 5; // 0x5
55    field public static final int STATUS_FAILURE_USER_DOES_NOT_EXIST = 4; // 0x4
56    field public static final int STATUS_SUCCESS = 1; // 0x1
57    field public static final int STATUS_SUCCESS_LAST_ADMIN_REMOVED = 2; // 0x2
58    field public static final int STATUS_SUCCESS_LAST_ADMIN_SET_EPHEMERAL = 6; // 0x6
59    field public static final int STATUS_SUCCESS_SET_EPHEMERAL = 3; // 0x3
60  }
61
62  public final class StartUserInBackgroundResult {
63    method public int getStatus();
64    method public boolean isSuccess();
65    field public static final int STATUS_FAILURE_GENERIC = 100; // 0x64
66    field public static final int STATUS_FAILURE_USER_DOES_NOT_EXIST = 3; // 0x3
67    field public static final int STATUS_SUCCESS = 1; // 0x1
68    field public static final int STATUS_SUCCESS_CURRENT_USER = 2; // 0x2
69  }
70
71  public final class StopUserResult {
72    method public int getStatus();
73    method public boolean isSuccess();
74    field public static final int STATUS_FAILURE_CURRENT_USER = 2; // 0x2
75    field public static final int STATUS_FAILURE_GENERIC = 100; // 0x64
76    field public static final int STATUS_FAILURE_SYSTEM_USER = 3; // 0x3
77    field public static final int STATUS_FAILURE_USER_DOES_NOT_EXIST = 4; // 0x4
78    field public static final int STATUS_SUCCESS = 1; // 0x1
79  }
80
81}
82
83package android.car.content.pm {
84
85  public final class CarPackageManager {
86    method public void setEnableActivityBlocking(boolean);
87  }
88
89}
90
91package android.car.drivingstate {
92
93  public final class CarDrivingStateManager {
94    method public void injectDrivingState(int);
95  }
96
97}
98
99package android.car.media {
100
101  public final class CarAudioManager {
102    method @Deprecated public boolean isDynamicRoutingEnabled();
103  }
104
105}
106
107package android.car.user {
108
109  public final class CarUserManager {
110    method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public void addListener(@NonNull java.util.concurrent.Executor, @NonNull android.car.user.CarUserManager.UserLifecycleListener);
111    method public static String lifecycleEventTypeToString(int);
112    method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public void removeListener(@NonNull android.car.user.CarUserManager.UserLifecycleListener);
113    field public static final int USER_LIFECYCLE_EVENT_TYPE_STARTING = 1; // 0x1
114    field public static final int USER_LIFECYCLE_EVENT_TYPE_STOPPED = 6; // 0x6
115    field public static final int USER_LIFECYCLE_EVENT_TYPE_STOPPING = 5; // 0x5
116    field public static final int USER_LIFECYCLE_EVENT_TYPE_SWITCHING = 2; // 0x2
117    field public static final int USER_LIFECYCLE_EVENT_TYPE_UNLOCKED = 4; // 0x4
118    field public static final int USER_LIFECYCLE_EVENT_TYPE_UNLOCKING = 3; // 0x3
119  }
120
121  public static final class CarUserManager.UserLifecycleEvent {
122    method public int getEventType();
123    method @Nullable public android.os.UserHandle getPreviousUserHandle();
124    method @NonNull public android.os.UserHandle getUserHandle();
125  }
126
127  public static interface CarUserManager.UserLifecycleListener {
128    method public void onEvent(@NonNull android.car.user.CarUserManager.UserLifecycleEvent);
129  }
130
131}
132
133