1// Baseline format: 1.0 2CallbackInterface: android.car.CarAppFocusManager.OnAppFocusOwnershipCallback: 3 Callbacks must be abstract class instead of interface to enable extension in future API levels: OnAppFocusOwnershipCallback 4CallbackInterface: android.car.hardware.property.CarPropertyManager.CarPropertyEventCallback: 5 Callbacks must be abstract class instead of interface to enable extension in future API levels: CarPropertyEventCallback 6 7 8ConcreteCollection: android.car.hardware.property.CarPropertyManager#getPropertyList(android.util.ArraySet<java.lang.Integer>) parameter #0: 9 Parameter type is concrete collection (`android.util.ArraySet`); must be higher-level interface 10 11 12ExecutorRegistration: android.car.Car#createCar(android.content.Context, android.os.Handler, long, android.car.Car.CarServiceLifecycleListener): 13 Registration methods should have overload that accepts delivery Executor: `createCar` 14ExecutorRegistration: android.car.CarAppFocusManager#abandonAppFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback): 15 Registration methods should have overload that accepts delivery Executor: `abandonAppFocus` 16ExecutorRegistration: android.car.CarAppFocusManager#addFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener, int): 17 Registration methods should have overload that accepts delivery Executor: `addFocusListener` 18ExecutorRegistration: android.car.CarAppFocusManager#isOwningFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback, int): 19 Registration methods should have overload that accepts delivery Executor: `isOwningFocus` 20ExecutorRegistration: android.car.CarAppFocusManager#requestAppFocus(int, android.car.CarAppFocusManager.OnAppFocusOwnershipCallback): 21 Registration methods should have overload that accepts delivery Executor: `requestAppFocus` 22ExecutorRegistration: android.car.CarOccupantZoneManager#registerOccupantZoneConfigChangeListener(android.car.CarOccupantZoneManager.OccupantZoneConfigChangeListener): 23 Registration methods should have overload that accepts delivery Executor: `registerOccupantZoneConfigChangeListener` 24ExecutorRegistration: android.car.drivingstate.CarUxRestrictionsManager#registerListener(android.car.drivingstate.CarUxRestrictionsManager.OnUxRestrictionsChangedListener): 25 Registration methods should have overload that accepts delivery Executor: `registerListener` 26ExecutorRegistration: android.car.hardware.CarSensorManager#registerListener(android.car.hardware.CarSensorManager.OnSensorChangedListener, int, int): 27 Registration methods should have overload that accepts delivery Executor: `registerListener` 28ExecutorRegistration: android.car.hardware.property.CarPropertyManager#registerCallback(android.car.hardware.property.CarPropertyManager.CarPropertyEventCallback, int, float): 29 Registration methods should have overload that accepts delivery Executor: `registerCallback` 30ExecutorRegistration: android.car.media.CarAudioManager#registerCarVolumeCallback(android.car.media.CarAudioManager.CarVolumeCallback): 31 Registration methods should have overload that accepts delivery Executor: `registerCarVolumeCallback` 32 33 34HiddenSuperclass: android.car.CarAppFocusManager: 35 Public class android.car.CarAppFocusManager stripped of unavailable superclass android.car.CarManagerBase 36HiddenSuperclass: android.car.CarInfoManager: 37 Public class android.car.CarInfoManager stripped of unavailable superclass android.car.CarManagerBase 38HiddenSuperclass: android.car.CarOccupantZoneManager: 39 Public class android.car.CarOccupantZoneManager stripped of unavailable superclass android.car.CarManagerBase 40HiddenSuperclass: android.car.content.pm.CarPackageManager: 41 Public class android.car.content.pm.CarPackageManager stripped of unavailable superclass android.car.CarManagerBase 42HiddenSuperclass: android.car.drivingstate.CarUxRestrictionsManager: 43 Public class android.car.drivingstate.CarUxRestrictionsManager stripped of unavailable superclass android.car.CarManagerBase 44HiddenSuperclass: android.car.hardware.CarSensorManager: 45 Public class android.car.hardware.CarSensorManager stripped of unavailable superclass android.car.CarManagerBase 46HiddenSuperclass: android.car.hardware.property.CarPropertyManager: 47 Public class android.car.hardware.property.CarPropertyManager stripped of unavailable superclass android.car.CarManagerBase 48HiddenSuperclass: android.car.media.CarAudioManager: 49 Public class android.car.media.CarAudioManager stripped of unavailable superclass android.car.CarManagerBase 50HiddenSuperclass: android.car.settings.CarConfigurationManager: 51 Public class android.car.settings.CarConfigurationManager stripped of unavailable superclass android.car.CarManagerBase 52 53 54IntentName: android.car.Car#CAR_EXTRA_BROWSE_SERVICE_FOR_SESSION: 55 Intent extra constant name must be EXTRA_FOO: CAR_EXTRA_BROWSE_SERVICE_FOR_SESSION 56IntentName: android.car.Car#CAR_EXTRA_MEDIA_COMPONENT: 57 Intent extra constant name must be EXTRA_FOO: CAR_EXTRA_MEDIA_COMPONENT 58IntentName: android.car.Car#CAR_INTENT_ACTION_MEDIA_TEMPLATE: 59 Intent action constant name must be ACTION_FOO: CAR_INTENT_ACTION_MEDIA_TEMPLATE 60 61 62ListenerLast: android.car.CarAppFocusManager#abandonAppFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback, int) parameter #1: 63 Listeners should always be at end of argument list (method `abandonAppFocus`) 64ListenerLast: android.car.CarAppFocusManager#isOwningFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback, int) parameter #1: 65 Listeners should always be at end of argument list (method `isOwningFocus`) 66 67 68MissingNullability: android.car.Car#createCar(android.content.Context) parameter #0: 69 Missing nullability on parameter `context` in method `createCar` 70MissingNullability: android.car.Car#createCar(android.content.Context, android.content.ServiceConnection) parameter #0: 71 Missing nullability on parameter `context` in method `createCar` 72MissingNullability: android.car.Car#createCar(android.content.Context, android.content.ServiceConnection) parameter #1: 73 Missing nullability on parameter `serviceConnectionListener` in method `createCar` 74MissingNullability: android.car.Car#createCar(android.content.Context, android.content.ServiceConnection, android.os.Handler) parameter #0: 75 Missing nullability on parameter `context` in method `createCar` 76MissingNullability: android.car.Car#createCar(android.content.Context, android.content.ServiceConnection, android.os.Handler) parameter #1: 77 Missing nullability on parameter `serviceConnectionListener` in method `createCar` 78MissingNullability: android.car.Car#createCar(android.content.Context, android.os.Handler) parameter #0: 79 Missing nullability on parameter `context` in method `createCar` 80MissingNullability: android.car.Car#getCarManager(String) parameter #0: 81 Missing nullability on parameter `serviceName` in method `getCarManager` 82MissingNullability: android.car.CarAppFocusManager#abandonAppFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback) parameter #0: 83 Missing nullability on parameter `ownershipCallback` in method `abandonAppFocus` 84MissingNullability: android.car.CarAppFocusManager#abandonAppFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback, int) parameter #0: 85 Missing nullability on parameter `ownershipCallback` in method `abandonAppFocus` 86MissingNullability: android.car.CarAppFocusManager#addFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener, int) parameter #0: 87 Missing nullability on parameter `listener` in method `addFocusListener` 88MissingNullability: android.car.CarAppFocusManager#isOwningFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback, int) parameter #0: 89 Missing nullability on parameter `callback` in method `isOwningFocus` 90MissingNullability: android.car.CarAppFocusManager#removeFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener) parameter #0: 91 Missing nullability on parameter `listener` in method `removeFocusListener` 92MissingNullability: android.car.CarAppFocusManager#removeFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener, int) parameter #0: 93 Missing nullability on parameter `listener` in method `removeFocusListener` 94MissingNullability: android.car.CarAppFocusManager#requestAppFocus(int, android.car.CarAppFocusManager.OnAppFocusOwnershipCallback) parameter #1: 95 Missing nullability on parameter `ownershipCallback` in method `requestAppFocus` 96MissingNullability: android.car.CarInfoManager#getEvConnectorTypes(): 97 Missing nullability on method `getEvConnectorTypes` return 98MissingNullability: android.car.CarInfoManager#getFuelTypes(): 99 Missing nullability on method `getFuelTypes` return 100MissingNullability: android.car.CarNotConnectedException#CarNotConnectedException(Exception) parameter #0: 101 Missing nullability on parameter `cause` in method `CarNotConnectedException` 102MissingNullability: android.car.CarNotConnectedException#CarNotConnectedException(String) parameter #0: 103 Missing nullability on parameter `name` in method `CarNotConnectedException` 104MissingNullability: android.car.CarNotConnectedException#CarNotConnectedException(String, Throwable) parameter #0: 105 Missing nullability on parameter `name` in method `CarNotConnectedException` 106MissingNullability: android.car.CarNotConnectedException#CarNotConnectedException(String, Throwable) parameter #1: 107 Missing nullability on parameter `cause` in method `CarNotConnectedException` 108MissingNullability: android.car.CarOccupantZoneManager.OccupantZoneInfo#CREATOR: 109 Missing nullability on field `CREATOR` in class `class android.car.CarOccupantZoneManager.OccupantZoneInfo` 110MissingNullability: android.car.CarOccupantZoneManager.OccupantZoneInfo#writeToParcel(android.os.Parcel, int) parameter #0: 111 Missing nullability on parameter `dest` in method `writeToParcel` 112MissingNullability: android.car.VehicleGear#toString(int): 113 Missing nullability on method `toString` return 114MissingNullability: android.car.VehiclePropertyIds#toString(int): 115 Missing nullability on method `toString` return 116MissingNullability: android.car.content.pm.CarPackageManager#isActivityDistractionOptimized(String, String) parameter #0: 117 Missing nullability on parameter `packageName` in method `isActivityDistractionOptimized` 118MissingNullability: android.car.content.pm.CarPackageManager#isActivityDistractionOptimized(String, String) parameter #1: 119 Missing nullability on parameter `className` in method `isActivityDistractionOptimized` 120MissingNullability: android.car.content.pm.CarPackageManager#isServiceDistractionOptimized(String, String) parameter #0: 121 Missing nullability on parameter `packageName` in method `isServiceDistractionOptimized` 122MissingNullability: android.car.content.pm.CarPackageManager#isServiceDistractionOptimized(String, String) parameter #1: 123 Missing nullability on parameter `className` in method `isServiceDistractionOptimized` 124MissingNullability: android.car.drivingstate.CarUxRestrictions#CREATOR: 125 Missing nullability on field `CREATOR` in class `class android.car.drivingstate.CarUxRestrictions` 126MissingNullability: android.car.drivingstate.CarUxRestrictions#CarUxRestrictions(android.car.drivingstate.CarUxRestrictions) parameter #0: 127 Missing nullability on parameter `uxRestrictions` in method `CarUxRestrictions` 128MissingNullability: android.car.drivingstate.CarUxRestrictions#isSameRestrictions(android.car.drivingstate.CarUxRestrictions) parameter #0: 129 Missing nullability on parameter `other` in method `isSameRestrictions` 130MissingNullability: android.car.drivingstate.CarUxRestrictions#writeToParcel(android.os.Parcel, int) parameter #0: 131 Missing nullability on parameter `dest` in method `writeToParcel` 132MissingNullability: android.car.drivingstate.CarUxRestrictions.Builder#build(): 133 Missing nullability on method `build` return 134MissingNullability: android.car.drivingstate.CarUxRestrictions.Builder#setMaxContentDepth(int): 135 Missing nullability on method `setMaxContentDepth` return 136MissingNullability: android.car.drivingstate.CarUxRestrictions.Builder#setMaxCumulativeContentItems(int): 137 Missing nullability on method `setMaxCumulativeContentItems` return 138MissingNullability: android.car.drivingstate.CarUxRestrictions.Builder#setMaxStringLength(int): 139 Missing nullability on method `setMaxStringLength` return 140MissingNullability: android.car.drivingstate.CarUxRestrictionsManager.OnUxRestrictionsChangedListener#onUxRestrictionsChanged(android.car.drivingstate.CarUxRestrictions) parameter #0: 141 Missing nullability on parameter `restrictionInfo` in method `onUxRestrictionsChanged` 142MissingNullability: android.car.hardware.CarPropertyConfig#CREATOR: 143 Missing nullability on field `CREATOR` in class `class android.car.hardware.CarPropertyConfig` 144MissingNullability: android.car.hardware.CarPropertyConfig#writeToParcel(android.os.Parcel, int) parameter #0: 145 Missing nullability on parameter `dest` in method `writeToParcel` 146MissingNullability: android.car.hardware.CarPropertyValue#CREATOR: 147 Missing nullability on field `CREATOR` in class `class android.car.hardware.CarPropertyValue` 148MissingNullability: android.car.hardware.CarPropertyValue#writeToParcel(android.os.Parcel, int) parameter #0: 149 Missing nullability on parameter `dest` in method `writeToParcel` 150MissingNullability: android.car.hardware.CarSensorEvent#CREATOR: 151 Missing nullability on field `CREATOR` in class `class android.car.hardware.CarSensorEvent` 152MissingNullability: android.car.hardware.CarSensorEvent#floatValues: 153 Missing nullability on field `floatValues` in class `class android.car.hardware.CarSensorEvent` 154MissingNullability: android.car.hardware.CarSensorEvent#intValues: 155 Missing nullability on field `intValues` in class `class android.car.hardware.CarSensorEvent` 156MissingNullability: android.car.hardware.CarSensorEvent#longValues: 157 Missing nullability on field `longValues` in class `class android.car.hardware.CarSensorEvent` 158MissingNullability: android.car.hardware.CarSensorEvent#writeToParcel(android.os.Parcel, int) parameter #0: 159 Missing nullability on parameter `dest` in method `writeToParcel` 160MissingNullability: android.car.hardware.CarSensorManager.OnSensorChangedListener#onSensorChanged(android.car.hardware.CarSensorEvent) parameter #0: 161 Missing nullability on parameter `event` in method `onSensorChanged` 162MissingNullability: android.car.hardware.property.CarPropertyManager.CarPropertyEventCallback#onChangeEvent(android.car.hardware.CarPropertyValue) parameter #0: 163 Missing nullability on parameter `value` in method `onChangeEvent` 164MissingNullability: android.car.settings.CarConfigurationManager#getSpeedBumpConfiguration(): 165 Missing nullability on method `getSpeedBumpConfiguration` return 166MissingNullability: android.car.settings.SpeedBumpConfiguration#CREATOR: 167 Missing nullability on field `CREATOR` in class `class android.car.settings.SpeedBumpConfiguration` 168MissingNullability: android.car.settings.SpeedBumpConfiguration#writeToParcel(android.os.Parcel, int) parameter #0: 169 Missing nullability on parameter `desk` in method `writeToParcel` 170 171 172MutableBareField: android.car.CarOccupantZoneManager.OccupantZoneInfo#zoneId: 173 Bare field zoneId must be marked final, or moved behind accessors if mutable 174MutableBareField: android.car.hardware.CarSensorEvent#sensorType: 175 Bare field sensorType must be marked final, or moved behind accessors if mutable 176MutableBareField: android.car.hardware.CarSensorEvent#timestamp: 177 Bare field timestamp must be marked final, or moved behind accessors if mutable 178MutableBareField: android.car.hardware.CarSensorEvent.EnvironmentData#temperature: 179 Bare field temperature must be marked final, or moved behind accessors if mutable 180MutableBareField: android.car.hardware.CarSensorEvent.EnvironmentData#timestamp: 181 Bare field timestamp must be marked final, or moved behind accessors if mutable 182 183 184NotCloseable: android.car.Car: 185 Classes that release resources (disconnect()) should implement AutoClosable and CloseGuard: class android.car.Car 186 187 188PublicTypedef: android.car.drivingstate.CarUxRestrictions.CarUxRestrictionsInfo: 189 Don't expose @IntDef: CarUxRestrictionsInfo must be hidden. 190PublicTypedef: android.car.hardware.CarPropertyValue.PropertyStatus: 191 Don't expose @IntDef: PropertyStatus must be hidden. 192 193 194RegistrationName: android.car.CarOccupantZoneManager#registerOccupantZoneConfigChangeListener(android.car.CarOccupantZoneManager.OccupantZoneConfigChangeListener): 195 Listener methods should be named add/remove; was registerOccupantZoneConfigChangeListener 196RegistrationName: android.car.CarOccupantZoneManager#unregisterOccupantZoneConfigChangeListener(android.car.CarOccupantZoneManager.OccupantZoneConfigChangeListener): 197 Listener methods should be named add/remove; was unregisterOccupantZoneConfigChangeListener 198RegistrationName: android.car.drivingstate.CarUxRestrictionsManager#registerListener(android.car.drivingstate.CarUxRestrictionsManager.OnUxRestrictionsChangedListener): 199 Listener methods should be named add/remove; was registerListener 200RegistrationName: android.car.drivingstate.CarUxRestrictionsManager#unregisterListener(): 201 Listener methods should be named add/remove; was unregisterListener 202RegistrationName: android.car.hardware.CarSensorManager#registerListener(android.car.hardware.CarSensorManager.OnSensorChangedListener, int, int): 203 Listener methods should be named add/remove; was registerListener 204RegistrationName: android.car.hardware.CarSensorManager#unregisterListener(android.car.hardware.CarSensorManager.OnSensorChangedListener): 205 Listener methods should be named add/remove; was unregisterListener 206RegistrationName: android.car.hardware.CarSensorManager#unregisterListener(android.car.hardware.CarSensorManager.OnSensorChangedListener, int): 207 Listener methods should be named add/remove; was unregisterListener 208 209 210SamShouldBeLast: android.car.CarAppFocusManager#addFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener, int): 211 SAM-compatible parameters (such as parameter 1, "listener", in android.car.CarAppFocusManager.addFocusListener) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions 212SamShouldBeLast: android.car.CarAppFocusManager#removeFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener, int): 213 SAM-compatible parameters (such as parameter 1, "listener", in android.car.CarAppFocusManager.removeFocusListener) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions 214SamShouldBeLast: android.car.hardware.CarSensorManager#registerListener(android.car.hardware.CarSensorManager.OnSensorChangedListener, int, int): 215 SAM-compatible parameters (such as parameter 1, "listener", in android.car.hardware.CarSensorManager.registerListener) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions 216SamShouldBeLast: android.car.hardware.CarSensorManager#unregisterListener(android.car.hardware.CarSensorManager.OnSensorChangedListener, int): 217 SAM-compatible parameters (such as parameter 1, "listener", in android.car.hardware.CarSensorManager.unregisterListener) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions 218 219 220ServiceName: android.car.Car#CAR_CONFIGURATION_SERVICE: 221 Inconsistent service value; expected `CAR_CONFIGURATION`, was `configuration` 222ServiceName: android.car.Car#CAR_NAVIGATION_SERVICE: 223 Inconsistent service value; expected `CAR_NAVIGATION`, was `car_navigation_service` 224ServiceName: android.car.Car#CAR_OCCUPANT_ZONE_SERVICE: 225 Inconsistent service value; expected `CAR_OCCUPANT_ZONE`, was `car_occupant_zone_service` 226ServiceName: android.car.Car#CAR_UX_RESTRICTION_SERVICE: 227 Inconsistent service value; expected `CAR_UX_RESTRICTION`, was `uxrestriction` 228 229 230StaticUtils: android.car.VehiclePropertyIds: 231 Fully-static utility classes must not have constructor 232StaticUtils: android.car.settings.CarSettings.Global: 233 Fully-static utility classes must not have constructor 234 235 236VisiblySynchronized: PsiThisExpression:this: 237 Internal locks must not be exposed (synchronizing on this or class is still externally observable): method android.car.CarAppFocusManager.addFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener,int) 238VisiblySynchronized: android.car.CarAppFocusManager#abandonAppFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback): 239 Internal locks must not be exposed (synchronizing on this or class is still externally observable): method android.car.CarAppFocusManager.abandonAppFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback) 240VisiblySynchronized: android.car.CarAppFocusManager#abandonAppFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback, int): 241 Internal locks must not be exposed (synchronizing on this or class is still externally observable): method android.car.CarAppFocusManager.abandonAppFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback,int) 242VisiblySynchronized: android.car.CarAppFocusManager#addFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener, int): 243 Internal locks must not be exposed (synchronizing on this or class is still externally observable): method android.car.CarAppFocusManager.addFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener,int) 244VisiblySynchronized: android.car.CarAppFocusManager#isOwningFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback, int): 245 Internal locks must not be exposed (synchronizing on this or class is still externally observable): method android.car.CarAppFocusManager.isOwningFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback,int) 246VisiblySynchronized: android.car.CarAppFocusManager#removeFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener): 247 Internal locks must not be exposed (synchronizing on this or class is still externally observable): method android.car.CarAppFocusManager.removeFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener) 248VisiblySynchronized: android.car.CarAppFocusManager#removeFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener, int): 249 Internal locks must not be exposed (synchronizing on this or class is still externally observable): method android.car.CarAppFocusManager.removeFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener,int) 250VisiblySynchronized: android.car.CarAppFocusManager#requestAppFocus(int, android.car.CarAppFocusManager.OnAppFocusOwnershipCallback): 251 Internal locks must not be exposed (synchronizing on this or class is still externally observable): method android.car.CarAppFocusManager.requestAppFocus(int,android.car.CarAppFocusManager.OnAppFocusOwnershipCallback) 252VisiblySynchronized: android.car.drivingstate.CarUxRestrictionsManager#unregisterListener(): 253 Internal locks must not be exposed (synchronizing on this or class is still externally observable): method android.car.drivingstate.CarUxRestrictionsManager.unregisterListener() 254