in car_app_library/showcase/common/src/main/java/androidx/car/app/sample/showcase/common/renderer/CarHardwareRenderer.java [231:304]
public void disable() {
mRequestRenderRunnable = null;
CarHardwareManager carHardwareManager =
mCarContext.getCarService(CarHardwareManager.class);
CarInfo carInfo = carHardwareManager.getCarInfo();
CarSensors carSensors = carHardwareManager.getCarSensors();
try {
// Unsubscribe carinfo
carInfo.removeTollListener(mTollListener);
mHasTollCardPermission = true;
} catch (SecurityException e) {
mHasTollCardPermission = false;
}
mTollCard = null;
try {
carInfo.removeEnergyLevelListener(mEnergyLevelListener);
mHasEnergyLevelPermission = true;
} catch (SecurityException e) {
mHasEnergyLevelPermission = false;
}
mEnergyLevel = null;
try {
carInfo.removeSpeedListener(mSpeedListener);
mHasSpeedPermission = true;
} catch (SecurityException e) {
mHasSpeedPermission = false;
}
mSpeed = null;
try {
carInfo.removeMileageListener(mMileageListener);
mHasMileagePermission = true;
} catch (SecurityException e) {
mHasMileagePermission = false;
}
mMileage = null;
try {
// Unsubscribe sensors
carSensors.removeCompassListener(mCompassListener);
mHasCompassPermission = true;
} catch (SecurityException e) {
mHasCompassPermission = false;
}
mCompass = null;
try {
carSensors.removeGyroscopeListener(mGyroscopeListener);
mHasGyroscopePermission = true;
} catch (SecurityException e) {
mHasGyroscopePermission = false;
}
mGyroscope = null;
try {
carSensors.removeAccelerometerListener(mAccelerometerListener);
mHasAccelerometerPermission = true;
} catch (SecurityException e) {
mHasAccelerometerPermission = false;
}
mAccelerometer = null;
try {
carSensors.removeCarHardwareLocationListener(mCarLocationListener);
mHasCarHardwareLocationPermission = true;
} catch (SecurityException e) {
mHasCarHardwareLocationPermission = false;
}
mCarHardwareLocation = null;
}