Merge "CarUserManager.removeUser() should not throw STATUS_TARGET_USER_IS_LAST_ADMIN_USER" into rvc-qpr-dev
diff --git a/car-lib/src/android/car/VehiclePropertyIds.java b/car-lib/src/android/car/VehiclePropertyIds.java
index a9945da..644ea1e 100644
--- a/car-lib/src/android/car/VehiclePropertyIds.java
+++ b/car-lib/src/android/car/VehiclePropertyIds.java
@@ -129,7 +129,7 @@
public static final int INFO_EXTERIOR_DIMENSIONS = 289472779;
/**
* Current odometer value of the vehicle
- * Requires permission: {@link Car#PERMISSION_MILEAGE}.
+ * The property is protected by the signature permission: android.car.permission.CAR_MILEAGE.
*/
@RequiresPermission(Car.PERMISSION_MILEAGE)
public static final int PERF_ODOMETER = 291504644;
@@ -166,25 +166,29 @@
public static final int PERF_REAR_STEERING_ANGLE = 291504656;
/**
* Temperature of engine coolant
- * Requires permission: {@link Car#PERMISSION_CAR_ENGINE_DETAILED}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_ENGINE_DETAILED.
*/
@RequiresPermission(Car.PERMISSION_CAR_ENGINE_DETAILED)
public static final int ENGINE_COOLANT_TEMP = 291504897;
/**
* Engine oil level
- * Requires permission: {@link Car#PERMISSION_CAR_ENGINE_DETAILED}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_ENGINE_DETAILED.
*/
@RequiresPermission(Car.PERMISSION_CAR_ENGINE_DETAILED)
public static final int ENGINE_OIL_LEVEL = 289407747;
/**
* Temperature of engine oil
- * Requires permission: {@link Car#PERMISSION_CAR_ENGINE_DETAILED}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_ENGINE_DETAILED.
*/
@RequiresPermission(Car.PERMISSION_CAR_ENGINE_DETAILED)
public static final int ENGINE_OIL_TEMP = 291504900;
/**
* Engine rpm
- * Requires permission: {@link Car#PERMISSION_CAR_ENGINE_DETAILED}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_ENGINE_DETAILED.
*/
@RequiresPermission(Car.PERMISSION_CAR_ENGINE_DETAILED)
public static final int ENGINE_RPM = 291504901;
@@ -203,7 +207,8 @@
/**
* Fuel door open
* Requires permission: {@link Car#PERMISSION_ENERGY_PORTS} to read the property.
- * Requires permission: {@link Car#PERMISSION_CONTROL_ENERGY_PORTS} to control the property.
+ * Requires the signature permission: android.car.permission.CONTROL_CAR_ENERGY_PORTS to write
+ * the property.
*/
@RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_ENERGY_PORTS))
@RequiresPermission.Write(@RequiresPermission(Car.PERMISSION_CONTROL_ENERGY_PORTS))
@@ -217,7 +222,8 @@
/**
* EV charge port open
* Requires permission: {@link Car#PERMISSION_ENERGY_PORTS} to read the property.
- * Requires permission: {@link Car#PERMISSION_CONTROL_ENERGY_PORTS} to control the property.
+ * Requires the signature permission: android.car.permission.CONTROL_CAR_ENERGY_PORTS to write
+ * the property.
*/
@RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_ENERGY_PORTS))
@RequiresPermission.Write(@RequiresPermission(Car.PERMISSION_CONTROL_ENERGY_PORTS))
@@ -241,7 +247,8 @@
* all energy sources in a vehicle. For example, a hybrid car's range will
* be the sum of the ranges based on fuel and battery.
* Requires permission: {@link Car#PERMISSION_ENERGY} to read the property.
- * Requires permission: {@link Car#PERMISSION_ADJUST_RANGE_REMAINING} to write the property.
+ * Requires the signature permission: android.car.permission.ADJUST_RANGE_REMAINING to write
+ * the property.
*/
@RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_ENERGY))
@RequiresPermission.Write(@RequiresPermission(Car.PERMISSION_ADJUST_RANGE_REMAINING))
@@ -251,7 +258,7 @@
*
* min/max value indicates tire pressure sensor range. Each tire will have a separate min/max
* value denoted by its areaConfig.areaId.
- * Requires permission: {@link Car#PERMISSION_TIRES}.
+ * The property is protected by the signature permission: android.car.permission.CAR_TIRES.
*/
@RequiresPermission(Car.PERMISSION_TIRES)
public static final int TIRE_PRESSURE = 392168201;
@@ -298,7 +305,8 @@
public static final int NIGHT_MODE = 287310855;
/**
* State of the vehicles turn signals
- * Requires permission: {@link Car#PERMISSION_EXTERIOR_LIGHTS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_EXTERIOR_LIGHTS .
*/
@RequiresPermission(Car.PERMISSION_EXTERIOR_LIGHTS)
public static final int TURN_SIGNAL_STATE = 289408008;
@@ -310,109 +318,127 @@
public static final int IGNITION_STATE = 289408009;
/**
* ABS is active
- * Requires permission: {@link Car#PERMISSION_CAR_DYNAMICS_STATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_DYNAMICS_STATE.
*/
@RequiresPermission(Car.PERMISSION_CAR_DYNAMICS_STATE)
public static final int ABS_ACTIVE = 287310858;
/**
* Traction Control is active
- * Requires permission: {@link Car#PERMISSION_CAR_DYNAMICS_STATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_DYNAMICS_STATE.
*/
@RequiresPermission(Car.PERMISSION_CAR_DYNAMICS_STATE)
public static final int TRACTION_CONTROL_ACTIVE = 287310859;
/**
* Fan speed setting
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_FAN_SPEED = 356517120;
/**
* Fan direction setting
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_FAN_DIRECTION = 356517121;
/**
* HVAC current temperature.
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_TEMPERATURE_CURRENT = 358614274;
/**
* HVAC, target temperature set.
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_TEMPERATURE_SET = 358614275;
/**
* On/off defrost for designated window
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_DEFROSTER = 320865540;
/**
* On/off AC for designated areaId
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_AC_ON = 354419973;
/**
* On/off max AC
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_MAX_AC_ON = 354419974;
/**
* On/off max defrost
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_MAX_DEFROST_ON = 354419975;
/**
* Recirculation on/off
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_RECIRC_ON = 354419976;
/**
* Enable temperature coupling between areas.
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_DUAL_ON = 354419977;
/**
* On/off automatic mode
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_AUTO_ON = 354419978;
/**
* Seat heating/cooling
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_SEAT_TEMPERATURE = 356517131;
/**
* Side Mirror Heat
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_SIDE_MIRROR_HEAT = 339739916;
/**
* Steering Wheel Heating/Cooling
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_STEERING_WHEEL_HEAT = 289408269;
/**
* Temperature units for display
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_TEMPERATURE_DISPLAY_UNITS = 289408270;
/**
* Actual fan speed
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_ACTUAL_FAN_SPEED_RPM = 356517135;
@@ -423,31 +449,36 @@
* properties that control individual HVAC features/subsystems to AVAILABLE
* state (unless any/all of them are UNAVAILABLE on their own individual
* merits).
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_POWER_ON = 354419984;
/**
* Fan Positions Available
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_FAN_DIRECTION_AVAILABLE = 356582673;
/**
* Automatic recirculation on/off
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_AUTO_RECIRC_ON = 354419986;
/**
* Seat ventilation
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
public static final int HVAC_SEAT_VENTILATION = 356517139;
/**
* ELECTRIC DEFROSTER
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_CLIMATE}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_CLIMATE.
* @hide
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE)
@@ -455,8 +486,8 @@
/**
* Distance units for display
* Requires permission {@link Car#PERMISSION_READ_DISPLAY_UNITS} to read the property.
- * Requires permission {@link Car#PERMISSION_CONTROL_DISPLAY_UNITS} and
- * {@link Car#PERMISSION_VENDOR_EXTENSION}to write the property.
+ * Requires two signature permissions: android.car.permission.CONTROL_CAR_DISPLAY_UNITS and
+ * android.car.permission.CAR_VENDOR_EXTENSION to write the property.
*/
@RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_READ_DISPLAY_UNITS))
@RequiresPermission.Write(@RequiresPermission(allOf = {Car.PERMISSION_CONTROL_DISPLAY_UNITS,
@@ -465,8 +496,8 @@
/**
* Fuel volume units for display
* Requires permission {@link Car#PERMISSION_READ_DISPLAY_UNITS} to read the property.
- * Requires permission {@link Car#PERMISSION_CONTROL_DISPLAY_UNITS}
- * and {@link Car#PERMISSION_VENDOR_EXTENSION}to write the property.
+ * Requires two signature permissions: android.car.permission.CONTROL_CAR_DISPLAY_UNITS and
+ * android.car.permission.CAR_VENDOR_EXTENSION to write the property.
*/
@RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_READ_DISPLAY_UNITS))
@RequiresPermission.Write(@RequiresPermission(allOf = {Car.PERMISSION_CONTROL_DISPLAY_UNITS,
@@ -475,8 +506,8 @@
/**
* Tire pressure units for display
* Requires permission {@link Car#PERMISSION_READ_DISPLAY_UNITS} to read the property.
- * Requires permission {@link Car#PERMISSION_CONTROL_DISPLAY_UNITS} and
- * {@link Car#PERMISSION_VENDOR_EXTENSION}to write the property.
+ * Requires two signature permissions: android.car.permission.CONTROL_CAR_DISPLAY_UNITS and
+ * android.car.permission.CAR_VENDOR_EXTENSION to write the property.
*/
@RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_READ_DISPLAY_UNITS))
@RequiresPermission.Write(@RequiresPermission(allOf = {Car.PERMISSION_CONTROL_DISPLAY_UNITS,
@@ -485,8 +516,8 @@
/**
* EV battery units for display
* Requires permission {@link Car#PERMISSION_READ_DISPLAY_UNITS} to read the property.
- * Requires permission {@link Car#PERMISSION_CONTROL_DISPLAY_UNITS} and
- * {@link Car#PERMISSION_VENDOR_EXTENSION}to write the property.
+ * Requires two signature permissions: android.car.permission.CONTROL_CAR_DISPLAY_UNITS and
+ * android.car.permission.CAR_VENDOR_EXTENSION to write the property.
*/
@RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_READ_DISPLAY_UNITS))
@RequiresPermission.Write(@RequiresPermission(allOf = {Car.PERMISSION_CONTROL_DISPLAY_UNITS,
@@ -495,8 +526,8 @@
/**
* Speed Units for display
* Requires permission {@link Car#PERMISSION_READ_DISPLAY_UNITS} to read the property.
- * Requires permission {@link Car#PERMISSION_CONTROL_DISPLAY_UNITS} and
- * {@link Car#PERMISSION_VENDOR_EXTENSION}to write the property.
+ * Requires two signature permissions: android.car.permission.CONTROL_CAR_DISPLAY_UNITS and
+ * android.car.permission.CAR_VENDOR_EXTENSION to write the property.
* @hide
*/
@RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_READ_DISPLAY_UNITS))
@@ -506,8 +537,8 @@
/**
* Fuel consumption units for display
* Requires permission {@link Car#PERMISSION_READ_DISPLAY_UNITS} to read the property.
- * Requires permission {@link Car#PERMISSION_CONTROL_DISPLAY_UNITS} and
- * {@link Car#PERMISSION_VENDOR_EXTENSION}to write the property.
+ * Requires two signature permissions: android.car.permission.CONTROL_CAR_DISPLAY_UNITS and
+ * android.car.permission.CAR_VENDOR_EXTENSION to write the property.
*/
@RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_READ_DISPLAY_UNITS))
@RequiresPermission.Write(@RequiresPermission(allOf = {Car.PERMISSION_CONTROL_DISPLAY_UNITS,
@@ -524,7 +555,7 @@
*
* It is assumed that AP's power state is controller by separate power
* controller.
- * Requires permission: {@link Car#PERMISSION_CAR_POWER}.
+ * The property is protected by the signature permission: android.car.permission.CAR_POWER.
*/
@RequiresPermission(Car.PERMISSION_CAR_POWER)
public static final int AP_POWER_STATE_REQ = 289475072;
@@ -533,7 +564,7 @@
*
* It is assumed that AP's power state is controller by separate power
* controller.
- * Requires permission: {@link Car#PERMISSION_CAR_POWER}.
+ * The property is protected by the signature permission: android.car.permission.CAR_POWER.
*/
@RequiresPermission(Car.PERMISSION_CAR_POWER)
public static final int AP_POWER_STATE_REPORT = 289475073;
@@ -543,7 +574,7 @@
* off. For example, even if user presses power on button after automatic
* power on with door unlock, bootup reason must stay with
* VehicleApPowerBootupReason#USER_UNLOCK.
- * Requires permission: {@link Car#PERMISSION_CAR_POWER}.
+ * The property is protected by the signature permission: android.car.permission.CAR_POWER.
*/
@RequiresPermission(Car.PERMISSION_CAR_POWER)
public static final int AP_POWER_BOOTUP_REASON = 289409538;
@@ -551,7 +582,7 @@
* Property to represent brightness of the display. Some cars have single
* control for the brightness of all displays and this property is to share
* change in that control.
- * Requires permission: {@link Car#PERMISSION_CAR_POWER}.
+ * The property is protected by the signature permission: android.car.permission.CAR_POWER.
*/
@RequiresPermission(Car.PERMISSION_CAR_POWER)
public static final int DISPLAY_BRIGHTNESS = 289409539;
@@ -564,55 +595,64 @@
*
* This is an integer in case a door may be set to a particular position.
* Max value indicates fully open, min value (0) indicates fully closed.
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_DOORS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_DOORS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_DOORS)
public static final int DOOR_POS = 373295872;
/**
* Door move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_DOORS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_DOORS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_DOORS)
public static final int DOOR_MOVE = 373295873;
/**
* Door lock
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_DOORS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_DOORS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_DOORS)
public static final int DOOR_LOCK = 371198722;
/**
* Mirror Z Position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_MIRRORS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_MIRRORS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_MIRRORS)
public static final int MIRROR_Z_POS = 339741504;
/**
* Mirror Z Move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_MIRRORS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_MIRRORS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_MIRRORS)
public static final int MIRROR_Z_MOVE = 339741505;
/**
* Mirror Y Position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_MIRRORS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_MIRRORS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_MIRRORS)
public static final int MIRROR_Y_POS = 339741506;
/**
* Mirror Y Move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_MIRRORS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_MIRRORS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_MIRRORS)
public static final int MIRROR_Y_MOVE = 339741507;
/**
* Mirror Lock
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_MIRRORS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_MIRRORS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_MIRRORS)
public static final int MIRROR_LOCK = 287312708;
/**
* Mirror Fold
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_MIRRORS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_MIRRORS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_MIRRORS)
public static final int MIRROR_FOLD = 287312709;
@@ -622,7 +662,8 @@
* This parameter selects the memory preset to use to select the seat
* position. The minValue is always 0, and the maxValue determines the
* number of seat positions available.
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_MEMORY_SELECT = 356518784;
@@ -632,7 +673,8 @@
* This setting allows the user to save the current seat position settings
* into the selected preset slot. The maxValue for each seat position
* must match the maxValue for SEAT_MEMORY_SELECT.
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_MEMORY_SET = 356518785;
@@ -640,37 +682,43 @@
* Seatbelt buckled
*
* True indicates belt is buckled.
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_BELT_BUCKLED = 354421634;
/**
* Seatbelt height position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_BELT_HEIGHT_POS = 356518787;
/**
* Seatbelt height move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_BELT_HEIGHT_MOVE = 356518788;
/**
* Seat fore/aft position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_FORE_AFT_POS = 356518789;
/**
* Seat fore/aft move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_FORE_AFT_MOVE = 356518790;
/**
* Seat backrest angle 1 position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_BACKREST_ANGLE_1_POS = 356518791;
@@ -678,146 +726,169 @@
* Seat backrest angle 1 move
*
* Moves the backrest forward or recline.
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_BACKREST_ANGLE_1_MOVE = 356518792;
/**
* Seat backrest angle 2 position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_BACKREST_ANGLE_2_POS = 356518793;
/**
* Seat backrest angle 2 move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_BACKREST_ANGLE_2_MOVE = 356518794;
/**
* Seat height position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_HEIGHT_POS = 356518795;
/**
* Seat height move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_HEIGHT_MOVE = 356518796;
/**
* Seat depth position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_DEPTH_POS = 356518797;
/**
* Seat depth move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_DEPTH_MOVE = 356518798;
/**
* Seat tilt position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_TILT_POS = 356518799;
/**
* Seat tilt move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_TILT_MOVE = 356518800;
/**
* Lumber fore/aft position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_LUMBAR_FORE_AFT_POS = 356518801;
/**
* Lumbar fore/aft move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_LUMBAR_FORE_AFT_MOVE = 356518802;
/**
* Lumbar side support position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_LUMBAR_SIDE_SUPPORT_POS = 356518803;
/**
* Lumbar side support move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_LUMBAR_SIDE_SUPPORT_MOVE = 356518804;
/**
* Headrest height position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_HEADREST_HEIGHT_POS = 289409941;
/**
* Headrest height move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_HEADREST_HEIGHT_MOVE = 356518806;
/**
* Headrest angle position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_HEADREST_ANGLE_POS = 356518807;
/**
* Headrest angle move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_HEADREST_ANGLE_MOVE = 356518808;
/**
* Headrest fore/aft position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_HEADREST_FORE_AFT_POS = 356518809;
/**
* Headrest fore/aft move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_HEADREST_FORE_AFT_MOVE = 356518810;
/**
* Seat Occupancy
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_SEATS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_SEATS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS)
public static final int SEAT_OCCUPANCY = 356518832;
/**
* Window Position
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_WINDOWS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_WINDOWS
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_WINDOWS)
public static final int WINDOW_POS = 322964416;
/**
* Window Move
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_WINDOWS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_WINDOWS
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_WINDOWS)
public static final int WINDOW_MOVE = 322964417;
/**
* Window Lock
- * Requires permission: {@link Car#PERMISSION_CONTROL_CAR_WINDOWS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CONTROL_CAR_WINDOWS
*/
@RequiresPermission(Car.PERMISSION_CONTROL_CAR_WINDOWS)
public static final int WINDOW_LOCK = 320867268;
/**
* Vehicle Maps Service (VMS) message
- * Requires one of permissions in {@link Car#PERMISSION_VMS_PUBLISHER},
- * {@link Car#PERMISSION_VMS_SUBSCRIBER}.
+ * The property is protected by the signature permissions:
+ * android.car.permission.VMS_PUBLISHER and android.car.permission.VMS_SUBSCRIBER.
*/
@RequiresPermission(anyOf = {Car.PERMISSION_VMS_PUBLISHER, Car.PERMISSION_VMS_SUBSCRIBER})
public static final int VEHICLE_MAP_SERVICE = 299895808;
@@ -825,7 +896,8 @@
* OBD2 Live Sensor Data
*
* Reports a snapshot of the current (live) values of the OBD2 sensors available.
- * Requires permission: {@link Car#PERMISSION_CAR_DIAGNOSTIC_READ_ALL}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_DIAGNOSTICS.
*/
@RequiresPermission(Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL)
public static final int OBD2_LIVE_FRAME = 299896064;
@@ -834,13 +906,15 @@
*
* Reports a snapshot of the value of the OBD2 sensors available at the time that a fault
* occurred and was detected.
- * Requires permission: {@link Car#PERMISSION_CAR_DIAGNOSTIC_READ_ALL}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_DIAGNOSTICS.
*/
@RequiresPermission(Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL)
public static final int OBD2_FREEZE_FRAME = 299896065;
/**
* OBD2 Freeze Frame Information
- * Requires permission: {@link Car#PERMISSION_CAR_DIAGNOSTIC_READ_ALL}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_DIAGNOSTICS.
*/
@RequiresPermission(Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL)
public static final int OBD2_FREEZE_FRAME_INFO = 299896066;
@@ -849,55 +923,64 @@
*
* This property allows deletion of any of the freeze frames stored in
* vehicle memory, as described by OBD2_FREEZE_FRAME_INFO.
- * Requires permission: {@link Car#PERMISSION_CAR_DIAGNOSTIC_CLEAR}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CLEAR_CAR_DIAGNOSTICS.
*/
@RequiresPermission(Car.PERMISSION_CAR_DIAGNOSTIC_CLEAR)
public static final int OBD2_FREEZE_FRAME_CLEAR = 299896067;
/**
* Headlights State
- * Requires permission: {@link Car#PERMISSION_EXTERIOR_LIGHTS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_EXTERIOR_LIGHTS.
*/
@RequiresPermission(Car.PERMISSION_EXTERIOR_LIGHTS)
public static final int HEADLIGHTS_STATE = 289410560;
/**
* High beam lights state
- * Requires permission: {@link Car#PERMISSION_EXTERIOR_LIGHTS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_EXTERIOR_LIGHTS.
*/
@RequiresPermission(Car.PERMISSION_EXTERIOR_LIGHTS)
public static final int HIGH_BEAM_LIGHTS_STATE = 289410561;
/**
* Fog light state
- * Requires permission: {@link Car#PERMISSION_EXTERIOR_LIGHTS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_EXTERIOR_LIGHTS.
*/
@RequiresPermission(Car.PERMISSION_EXTERIOR_LIGHTS)
public static final int FOG_LIGHTS_STATE = 289410562;
/**
* Hazard light status
- * Requires permission: {@link Car#PERMISSION_EXTERIOR_LIGHTS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_EXTERIOR_LIGHTS.
*/
@RequiresPermission(Car.PERMISSION_EXTERIOR_LIGHTS)
public static final int HAZARD_LIGHTS_STATE = 289410563;
/**
* Headlight switch
- * Requires permission: {@link Car#PERMISSION_CONTROL_EXTERIOR_LIGHTS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_EXTERIOR_LIGHTS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_EXTERIOR_LIGHTS)
public static final int HEADLIGHTS_SWITCH = 289410576;
/**
* High beam light switch
- * Requires permission: {@link Car#PERMISSION_CONTROL_EXTERIOR_LIGHTS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_EXTERIOR_LIGHTS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_EXTERIOR_LIGHTS)
public static final int HIGH_BEAM_LIGHTS_SWITCH = 289410577;
/**
* Fog light switch
- * Requires permission: {@link Car#PERMISSION_CONTROL_EXTERIOR_LIGHTS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_EXTERIOR_LIGHTS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_EXTERIOR_LIGHTS)
public static final int FOG_LIGHTS_SWITCH = 289410578;
/**
* Hazard light switch
- * Requires permission: {@link Car#PERMISSION_CONTROL_EXTERIOR_LIGHTS}.
+ * The property is protected by the signature permission:
+ * android.car.permission.CAR_EXTERIOR_LIGHTS.
*/
@RequiresPermission(Car.PERMISSION_CONTROL_EXTERIOR_LIGHTS)
public static final int HAZARD_LIGHTS_SWITCH = 289410579;
diff --git a/car-lib/src/android/car/hardware/CarPropertyConfig.java b/car-lib/src/android/car/hardware/CarPropertyConfig.java
index df7ac5f..96b0aa8 100644
--- a/car-lib/src/android/car/hardware/CarPropertyConfig.java
+++ b/car-lib/src/android/car/hardware/CarPropertyConfig.java
@@ -38,8 +38,6 @@
* Represents general information about car property such as data type and min/max ranges for car
* areas (if applicable). This class supposed to be immutable, parcelable and could be passed over.
*
- * <p>Use {@link CarPropertyConfig#newBuilder} to create an instance of this class.
- *
* @param <T> refer to Parcel#writeValue(Object) to get a list of all supported types. The class
* should be visible to framework as default class loader is being used here.
*
diff --git a/car-lib/src/android/car/hardware/CarSensorEvent.java b/car-lib/src/android/car/hardware/CarSensorEvent.java
index 3f33a8d..68ba9f5 100644
--- a/car-lib/src/android/car/hardware/CarSensorEvent.java
+++ b/car-lib/src/android/car/hardware/CarSensorEvent.java
@@ -24,13 +24,14 @@
* data is stored in a sensor-type specific format in the object's float and byte arrays.
*
* To aid unmarshalling the object's data arrays, this class provides static nested classes and
- * conversion methods, for example {@link EnvironmentData} and {@link #getEnvironmentData}. The
- * conversion methods each have an optional data parameter which, if not null, will be used and
- * returned. This parameter should be used to avoid unnecessary object churn whenever possible.
- * Additionally, calling a conversion method on a CarSensorEvent object with an inappropriate type
- * will result in an {@code UnsupportedOperationException} being thrown.
+ * conversion methods. The conversion methods each have an optional data parameter which,
+ * if not null, will be used and returned. This parameter should be used to avoid unnecessary
+ * object churn whenever possible. Additionally, calling a conversion method on a CarSensorEvent
+ * object with an inappropriate type will result in an {@code UnsupportedOperationException}
+ * being thrown.
*
- * @deprecated consider using {@link android.car.hardware.property.CarPropertyEvent} instead.
+ * @deprecated consider using {@link CarPropertyValue} and
+ * {@link android.car.hardware.property.CarPropertyManager} instead.
*/
@Deprecated
public class CarSensorEvent implements Parcelable {
diff --git a/car-lib/src/android/car/hardware/CarSensorManager.java b/car-lib/src/android/car/hardware/CarSensorManager.java
index d047aa1..b34e171 100644
--- a/car-lib/src/android/car/hardware/CarSensorManager.java
+++ b/car-lib/src/android/car/hardware/CarSensorManager.java
@@ -52,17 +52,14 @@
/**
* This sensor represents vehicle speed in m/s.
* Sensor data in {@link CarSensorEvent} is a float which will be >= 0.
- * This requires {@link Car#PERMISSION_SPEED} permission.
*/
public static final int SENSOR_TYPE_CAR_SPEED = 0x11600207;
/**
* Represents engine RPM of the car. Sensor data in {@link CarSensorEvent} is a float.
- * This requires {@link Car#PERMISSION_CAR_ENGINE_DETAILED} permission.
*/
public static final int SENSOR_TYPE_RPM = 0x11600305;
/**
* Total travel distance of the car in Kilometer. Sensor data is a float.
- * This requires {@link Car#PERMISSION_MILEAGE} permission.
*/
public static final int SENSOR_TYPE_ODOMETER = 0x11600204;
/**
@@ -138,12 +135,10 @@
public static final int SENSOR_TYPE_WHEEL_TICK_DISTANCE = 0x11510306;
/**
* Set to true when ABS is active. This sensor is event driven.
- * This requires {@link Car#PERMISSION_CAR_DYNAMICS_STATE} permission.
*/
public static final int SENSOR_TYPE_ABS_ACTIVE = 0x1120040a;
/**
* Set to true when traction control is active. This sensor is event driven.
- * This requires {@link Car#PERMISSION_CAR_DYNAMICS_STATE} permission.
*/
public static final int SENSOR_TYPE_TRACTION_CONTROL_ACTIVE = 0x1120040b;
/** @hide */
@@ -156,8 +151,8 @@
/**
* Indicates battery level of the car.
- * In {@link CarSensorEvent}, represents battery level in WH. floatValues[{@link
- * CarSensorEvent#INDEX_EV_BATTERY_CAPACITY_ACTUAL}] represents the actual battery capacity in
+ * In {@link CarSensorEvent}, represents battery level in WH. floatValues of
+ * INDEX_EV_BATTERY_CAPACITY_ACTUAL property represents the actual battery capacity in
* WH. The battery degrades over time, so this value is expected to drop slowly over the life
* of the vehicle.
* This requires {@link Car#PERMISSION_ENERGY} permission.
@@ -180,7 +175,6 @@
public static final int SENSOR_TYPE_EV_BATTERY_CHARGE_RATE = 0x1160030c;
/**
* Oil level sensor.
- * This requires {@link Car#PERMISSION_CAR_ENGINE_DETAILED} permission
*/
public static final int SENSOR_TYPE_ENGINE_OIL_LEVEL = 0x11400303;
diff --git a/car_product/init/init.car.rc b/car_product/init/init.car.rc
index d255942..a4880ab 100644
--- a/car_product/init/init.car.rc
+++ b/car_product/init/init.car.rc
@@ -6,11 +6,11 @@
on property:persist.automotive.evs.mode=0
# stop EVS and automotive display services
stop automotive_display
- stop evs_driver
+ stop evs_sample_driver
stop evs_manager
on property:persist.automotive.evs.mode=1
# start EVS and automotive display services
start automotive_display
- start evs_driver
+ start evs_sample_driver
start evs_manager
diff --git a/evs/apps/default/ConfigManager.h b/evs/apps/default/ConfigManager.h
index 7c2186d..eb89770 100644
--- a/evs/apps/default/ConfigManager.h
+++ b/evs/apps/default/ConfigManager.h
@@ -111,6 +111,8 @@
android_pixel_format_t getExternalMemoryFormat() const {
return mExternalMemoryFormat;
}
+ void setMockGearSignal(int32_t signal) { mMockGearSignal = signal; }
+ int32_t getMockGearSignal() const { return mMockGearSignal; }
private:
// Camera information
@@ -126,6 +128,9 @@
// Format of external memory
android_pixel_format_t mExternalMemoryFormat;
+ // Gear signal to simulate in test mode
+ int32_t mMockGearSignal;
+
// Car body information (assumes front wheel steering and origin at center of rear axel)
// Note that units aren't specified and don't matter as long as all length units are consistent
// within the JSON file from which we parse. That is, if everything is in meters, that's fine.
diff --git a/evs/apps/default/EvsStateControl.cpp b/evs/apps/default/EvsStateControl.cpp
index 06af502..5e81022 100644
--- a/evs/apps/default/EvsStateControl.cpp
+++ b/evs/apps/default/EvsStateControl.cpp
@@ -219,7 +219,7 @@
bool EvsStateControl::selectStateForCurrentConditions() {
- static int32_t sDummyGear = int32_t(VehicleGear::GEAR_REVERSE);
+ static int32_t sDummyGear = mConfig.getMockGearSignal();
static int32_t sDummySignal = int32_t(VehicleTurnSignal::NONE);
if (mVehicle != nullptr) {
@@ -245,7 +245,7 @@
sDummyGear = int32_t(VehicleGear::GEAR_DRIVE);
}
- // Build the dummy vehicle state values (treating single values as 1 element vectors)
+ // Build the placeholder vehicle state values (treating single values as 1 element vectors)
mGearValue.value.int32Values.setToExternal(&sDummyGear, 1);
mTurnSignalValue.value.int32Values.setToExternal(&sDummySignal, 1);
}
diff --git a/evs/apps/default/config.json b/evs/apps/default/config.json
index a8f200f..81c96ae 100644
--- a/evs/apps/default/config.json
+++ b/evs/apps/default/config.json
@@ -19,8 +19,8 @@
}
],
"graphic" : {
- "frontPixel" : 23,
- "rearPixel" : 223
+ "frontPixel" : -20,
+ "rearPixel" : 260
},
"cameras" : [
{
diff --git a/evs/apps/default/evs_app.cpp b/evs/apps/default/evs_app.cpp
index 92d4b7a..877304e 100644
--- a/evs/apps/default/evs_app.cpp
+++ b/evs/apps/default/evs_app.cpp
@@ -133,6 +133,7 @@
int displayId = -1;
bool useExternalMemory = false;
android_pixel_format_t extMemoryFormat = HAL_PIXEL_FORMAT_RGBA_8888;
+ int32_t mockGearSignal = static_cast<int32_t>(VehicleGear::GEAR_REVERSE);
for (int i=1; i< argc; i++) {
if (strcmp(argv[i], "--test") == 0) {
useVehicleHal = false;
@@ -159,6 +160,15 @@
++i;
}
}
+ } else if (strcmp(argv[i], "--gear") == 0) {
+ // Gear signal to simulate
+ i += 1; // increase an index to next argument
+ if (strcasecmp(argv[i], "Park") == 0) {
+ mockGearSignal = static_cast<int32_t>(VehicleGear::GEAR_PARK);
+ } else if (strcasecmp(argv[i], "Reverse") != 0) {
+ LOG(WARNING) << "Unknown gear signal, " << argv[i] << ", is ignored "
+ << "and the reverse signal will be used instead";
+ }
} else {
printf("Ignoring unrecognized command line arg '%s'\n", argv[i]);
printHelp = true;
@@ -166,7 +176,10 @@
}
if (printHelp) {
printf("Options include:\n");
- printf(" --test\n\tDo not talk to Vehicle Hal, but simulate 'reverse' instead\n");
+ printf(" --test\n\tDo not talk to Vehicle Hal, "
+ "but simulate a given mock gear signal instead\n");
+ printf(" --gear\n\tMock gear signal for the test mode.");
+ printf(" Available options are Reverse and Park (case insensitive)\n");
printf(" --hw\n\tBypass EvsManager by connecting directly to EvsEnumeratorHw\n");
printf(" --mock\n\tConnect directly to EvsEnumeratorHw-Mock\n");
printf(" --display\n\tSpecify the display to use. If this is not set, the first"
@@ -230,6 +243,9 @@
config.useExternalMemory(useExternalMemory);
config.setExternalMemoryFormat(extMemoryFormat);
+ // Set a mock gear signal for the test mode
+ config.setMockGearSignal(mockGearSignal);
+
// Connect to the Vehicle HAL so we can monitor state
sp<IVehicle> pVnet;
if (useVehicleHal) {
diff --git a/evs/manager/1.1/android.automotive.evs.manager@1.1.rc b/evs/manager/1.1/android.automotive.evs.manager@1.1.rc
index 41212e2..5223822 100644
--- a/evs/manager/1.1/android.automotive.evs.manager@1.1.rc
+++ b/evs/manager/1.1/android.automotive.evs.manager@1.1.rc
@@ -3,5 +3,4 @@
priority -20
user automotive_evs
group automotive_evs system
- onrestart restart evs_app
disabled # will not automatically start with its class; must be explictly started.
diff --git a/evs/sampleDriver/android.hardware.automotive.evs@1.1-sample.rc b/evs/sampleDriver/android.hardware.automotive.evs@1.1-sample.rc
index 324a949..e7d7217 100644
--- a/evs/sampleDriver/android.hardware.automotive.evs@1.1-sample.rc
+++ b/evs/sampleDriver/android.hardware.automotive.evs@1.1-sample.rc
@@ -1,4 +1,4 @@
-service evs_driver /vendor/bin/android.hardware.automotive.evs@1.1-sample
+service evs_sample_driver /vendor/bin/android.hardware.automotive.evs@1.1-sample
class hal
priority -20
user graphics
diff --git a/evs/sepolicy/evs.mk b/evs/sepolicy/evs.mk
new file mode 100644
index 0000000..aee4003
--- /dev/null
+++ b/evs/sepolicy/evs.mk
@@ -0,0 +1,3 @@
+# Extended View System Selinux Policies
+PRODUCT_PUBLIC_SEPOLICY_DIRS += packages/services/Car/evs/sepolicy/public
+PRODUCT_PRIVATE_SEPOLICY_DIRS += packages/services/Car/evs/sepolicy/private
diff --git a/evs/sepolicy/private/automotive_display_service.te b/evs/sepolicy/private/automotive_display_service.te
new file mode 100644
index 0000000..cd42ed6
--- /dev/null
+++ b/evs/sepolicy/private/automotive_display_service.te
@@ -0,0 +1,2 @@
+allow automotive_display_service hal_evs_driver:binder transfer;
+allow automotive_display_service hal_evs_driver:fd use;
diff --git a/evs/sepolicy/evs_app.te b/evs/sepolicy/private/evs_app.te
similarity index 100%
rename from evs/sepolicy/evs_app.te
rename to evs/sepolicy/private/evs_app.te
diff --git a/evs/sepolicy/evs_driver.te b/evs/sepolicy/private/evs_driver.te
similarity index 94%
rename from evs/sepolicy/evs_driver.te
rename to evs/sepolicy/private/evs_driver.te
index 9bb7b97..5b847fa 100644
--- a/evs/sepolicy/evs_driver.te
+++ b/evs/sepolicy/private/evs_driver.te
@@ -1,5 +1,4 @@
-# evs_mock mock hardware driver service
-type hal_evs_driver, domain;
+# evs reference hardware driver service
hal_server_domain(hal_evs_driver, hal_evs)
hal_client_domain(hal_evs_driver, hal_evs)
diff --git a/evs/sepolicy/evs_manager.te b/evs/sepolicy/private/evs_manager.te
similarity index 74%
rename from evs/sepolicy/evs_manager.te
rename to evs/sepolicy/private/evs_manager.te
index cf649bb..32bbc32 100644
--- a/evs/sepolicy/evs_manager.te
+++ b/evs/sepolicy/private/evs_manager.te
@@ -1,5 +1,4 @@
# evs manager
-type evs_manager, domain, coredomain;
hal_server_domain(evs_manager, hal_evs)
hal_client_domain(evs_manager, hal_evs)
@@ -7,10 +6,7 @@
type evs_manager_exec, exec_type, file_type, system_file_type;
init_daemon_domain(evs_manager)
-# allow use of hwservices
-allow evs_manager hal_graphics_allocator_default:fd use;
-
-# allow write to fd
+# allow write messages to the shell
allow evs_manager shell:fd use;
allow evs_manager shell:fifo_file write;
diff --git a/evs/sepolicy/file_contexts b/evs/sepolicy/private/file_contexts
similarity index 100%
rename from evs/sepolicy/file_contexts
rename to evs/sepolicy/private/file_contexts
diff --git a/evs/sepolicy/servicemanager.te b/evs/sepolicy/private/servicemanager.te
similarity index 100%
rename from evs/sepolicy/servicemanager.te
rename to evs/sepolicy/private/servicemanager.te
diff --git a/evs/sepolicy/surfaceflinger.te b/evs/sepolicy/private/surfaceflinger.te
similarity index 100%
rename from evs/sepolicy/surfaceflinger.te
rename to evs/sepolicy/private/surfaceflinger.te
diff --git a/evs/sepolicy/public/evs_driver.te b/evs/sepolicy/public/evs_driver.te
new file mode 100644
index 0000000..9f72441
--- /dev/null
+++ b/evs/sepolicy/public/evs_driver.te
@@ -0,0 +1,2 @@
+# reference evs hardware driver service
+type hal_evs_driver, domain;
diff --git a/evs/sepolicy/public/evs_manager.te b/evs/sepolicy/public/evs_manager.te
new file mode 100644
index 0000000..24f3e6c
--- /dev/null
+++ b/evs/sepolicy/public/evs_manager.te
@@ -0,0 +1,2 @@
+# evs manager
+type evs_manager, domain, coredomain;
diff --git a/surround_view/service-impl/SurroundView2dSession.cpp b/surround_view/service-impl/SurroundView2dSession.cpp
index c2cc185..cbf652e 100644
--- a/surround_view/service-impl/SurroundView2dSession.cpp
+++ b/surround_view/service-impl/SurroundView2dSession.cpp
@@ -62,7 +62,7 @@
int32_t framerate;
} RawStreamConfig;
-static const size_t kStreamCfgSz = sizeof(RawStreamConfig);
+static const size_t kStreamCfgSz = sizeof(RawStreamConfig) / sizeof(int32_t);
static const uint8_t kGrayColor = 128;
static const int kInputNumChannels = 4;
static const int kOutputNumChannels = 3;
diff --git a/surround_view/service-impl/SurroundView3dSession.cpp b/surround_view/service-impl/SurroundView3dSession.cpp
index 18d7d4f..3bb2203 100644
--- a/surround_view/service-impl/SurroundView3dSession.cpp
+++ b/surround_view/service-impl/SurroundView3dSession.cpp
@@ -69,7 +69,7 @@
int32_t framerate;
} RawStreamConfig;
-static const size_t kStreamCfgSz = sizeof(RawStreamConfig);
+static const size_t kStreamCfgSz = sizeof(RawStreamConfig) / sizeof(int32_t);
static const uint8_t kGrayColor = 128;
static const int kNumFrames = 4;
static const int kInputNumChannels = 4;
diff --git a/tests/CarDeveloperOptions/res/values-ar/strings.xml b/tests/CarDeveloperOptions/res/values-ar/strings.xml
index b5310ee..e22fc32 100644
--- a/tests/CarDeveloperOptions/res/values-ar/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-ar/strings.xml
@@ -107,7 +107,7 @@
<string name="bluetooth_device_name" msgid="3682016026866302981">"اسم الجهاز"</string>
<string name="bluetooth_device_details" msgid="2500840679106321361">"إعدادات الجهاز"</string>
<string name="bluetooth_profile_details" msgid="1785505059738682493">"إعدادات الملف الشخصي"</string>
- <string name="bluetooth_name_not_set" msgid="1886067683138385142">"لم يتم تعيين اسم، استخدام اسم الحساب"</string>
+ <string name="bluetooth_name_not_set" msgid="1886067683138385142">"لم يتم ضبط اسم، استخدام اسم الحساب"</string>
<string name="bluetooth_scan_for_devices" msgid="3215740768422735880">"البحث عن أجهزة"</string>
<string name="bluetooth_rename_device" msgid="7862992396452800566">"إعادة تسمية هذا الجهاز"</string>
<string name="bluetooth_rename_button" msgid="8946904845821073267">"إعادة التسمية"</string>
@@ -216,7 +216,7 @@
<string name="radio_info_dl_kbps" msgid="2903778264453410272">"معدّل نقل بيانات DL (كيلوبت في الثانية):"</string>
<string name="radio_info_ul_kbps" msgid="3802245899811732716">"معدّل نقل بيانات UL (كيلوبت في الثانية):"</string>
<string name="radio_info_signal_location_label" msgid="6788144906873498013">"معلومات الموقع الخلوية (تم الإيقاف):"</string>
- <string name="radio_info_phy_chan_config" msgid="1184401689381480522">"تهيئة قناة LTE Physical:"</string>
+ <string name="radio_info_phy_chan_config" msgid="1184401689381480522">"إعداد قناة LTE Physical:"</string>
<string name="radio_info_cell_info_refresh_rate" msgid="3557422342215875913">"معدل إعادة تحميل المعلومات الخلوية:"</string>
<string name="radio_info_cellinfo_label" msgid="632796561627452215">"جميع معلومات القياس الخلوية:"</string>
<string name="radio_info_gprs_service_label" msgid="7926626443442993242">"خدمة البيانات:"</string>
@@ -235,7 +235,7 @@
<string name="radio_info_band_mode_label" msgid="9181607879920091762">"تحديد النطاق اللاسلكي"</string>
<string name="radio_info_voice_network_type_label" msgid="3686471589514241007">"نوع الشبكة الصوتية:"</string>
<string name="radio_info_data_network_type_label" msgid="5108279335070879015">"نوع شبكة البيانات:"</string>
- <string name="radio_info_set_perferred_label" msgid="1447353131819041587">"تعيين نوع الشبكة المفضل:"</string>
+ <string name="radio_info_set_perferred_label" msgid="1447353131819041587">"ضبط نوع الشبكة المفضل:"</string>
<string name="radio_info_ping_hostname_v4" msgid="4377067049156466290">"فحص اتصال اسم المضيف (www.google.com) عبر IPv4:"</string>
<string name="radio_info_ping_hostname_v6" msgid="3541896405771734445">"فحص اتصال اسم المضيف (www.google.com) عبر IPv6:"</string>
<string name="radio_info_http_client_test" msgid="781411599778629953">"اختبار عميل HTTP:"</string>
@@ -308,7 +308,7 @@
<string name="settings_label" msgid="7263237773415875813">"الإعدادات"</string>
<string name="settings_label_launcher" msgid="500627679902923496">"الإعدادات"</string>
<string name="settings_shortcut" msgid="4503714880251502167">"اختصار الإعدادات"</string>
- <string name="airplane_mode" msgid="4508870277398231073">"وضع الطائرة"</string>
+ <string name="airplane_mode" msgid="4508870277398231073">"وضع الطيران"</string>
<string name="wireless_networks_settings_title" msgid="4298430520189173949">"اللاسلكي والشبكات"</string>
<string name="radio_controls_summary" msgid="4596981962167684814">"إدارة Wi-Fi والبلوتوث ووضع الطائرة وشبكات الجوّال والشبكات الافتراضية الخاصة (VPN)"</string>
<string name="cellular_data_title" msgid="7909624119432695022">"بيانات الجوّال"</string>
@@ -913,7 +913,7 @@
<string name="wifi_stopping" msgid="413711069039939520">"إيقاف Wi-Fi…"</string>
<string name="wifi_error" msgid="5605801874484465557">"خطأ"</string>
<string name="wifi_sap_no_channel_error" msgid="6881796988574851628">"لا يتوفر التردد ٥ غيغاهرتز في هذا البلد"</string>
- <string name="wifi_in_airplane_mode" msgid="4729571191578262246">"في وضع الطائرة"</string>
+ <string name="wifi_in_airplane_mode" msgid="4729571191578262246">"في وضع الطيران"</string>
<string name="wifi_notify_open_networks" msgid="4782239203624619655">"الإشعار بوجود شبكات مفتوحة"</string>
<string name="wifi_notify_open_networks_summary" msgid="1383681260705466715">"الإشعار عند توفر شبكة عامة عالية الجودة"</string>
<string name="wifi_wakeup" msgid="4963732992164721548">"تفعيل اتّصال Wi‑Fi تلقائيًا"</string>
@@ -951,7 +951,7 @@
<string name="wifi_menu_p2p" msgid="4945665601551289791">"اتصال Wi-Fi مباشر"</string>
<string name="wifi_menu_scan" msgid="9082691677803181629">"فحص"</string>
<string name="wifi_menu_advanced" msgid="5984484498045511072">"إعدادات متقدمة"</string>
- <string name="wifi_menu_configure" msgid="52192491120701266">"تهيئة"</string>
+ <string name="wifi_menu_configure" msgid="52192491120701266">"إعداد"</string>
<string name="wifi_menu_connect" msgid="3984327567173931219">"اتصال بالشبكة"</string>
<string name="wifi_menu_remember" msgid="717257200269700641">"تذكر الشبكة"</string>
<string name="wifi_menu_forget" msgid="7561140554450163075">"حذف الشبكة"</string>
@@ -1133,7 +1133,7 @@
<string name="wifi_hotspot_tethering_on_subtext" product="tablet" msgid="71421730039785897">"تتم مشاركة اتصال الإنترنت على هذا الجهاز اللوحي عبر نقطة الاتصال"</string>
<string name="wifi_hotspot_tethering_on_subtext" product="default" msgid="8914285514605049879">"تتم مشاركة اتصال الإنترنت على هذا الهاتف عبر نقطة الاتصال"</string>
<string name="wifi_hotspot_on_local_only_subtext" msgid="7415381343846704553">"يشارك التطبيق المحتوى. لمشاركة اتصال الإنترنت، يجب إيقاف نقطة الاتصال، ثم تفعيلها."</string>
- <string name="wifi_hotspot_no_password_subtext" msgid="5400500962974373706">"لم يتم تعيين كلمة مرور"</string>
+ <string name="wifi_hotspot_no_password_subtext" msgid="5400500962974373706">"لم يتم ضبط كلمة مرور"</string>
<string name="wifi_hotspot_name_title" msgid="6572202165400226127">"اسم نقطة الاتصال"</string>
<string name="wifi_hotspot_name_summary_connecting" msgid="5176787959408511889">"جارٍ تفعيل <xliff:g id="WIFI_HOTSPOT_NAME">%1$s</xliff:g>..."</string>
<string name="wifi_hotspot_name_summary_connected" msgid="8387768642326756749">"يمكن توصيل الأجهزة الأخرى بشبكة <xliff:g id="WIFI_HOTSPOT_NAME">%1$s</xliff:g>"</string>
@@ -1521,7 +1521,7 @@
<string name="storage_dialog_unmountable" msgid="7082856306456936054">"بطاقة <xliff:g id="NAME_0">^1</xliff:g> هذه تالفة. \n\nلاستخدام بطاقة <xliff:g id="NAME_1">^1</xliff:g> هذه، عليك إعدادها أولاً."</string>
<string name="storage_dialog_unsupported" msgid="8274023677580782553">"هذا الجهاز غير متوافق مع <xliff:g id="NAME_0">^1</xliff:g> هذه. \n\nلاستخدام <xliff:g id="NAME_1">^1</xliff:g> هذه مع هذا الجهاز، عليك إعدادها أولاً."</string>
<string name="storage_internal_format_details" msgid="2780806013122012384">"بعد إجراء التنسيق، يمكنك استخدام <xliff:g id="NAME_0">^1</xliff:g> هذه على أجهزة أخرى. \n\nوسيتم محو جميع البيانات الموجودة على <xliff:g id="NAME_1">^1</xliff:g> هذه. يمكنك إجراء النسخ الاحتياطي أولاً. \n\n"<b>"النسخ الاحتياطي للصور والوسائط الأخرى"</b>" \nيمكنك نقل ملفات الوسائط إلى وحدة تخزين بديلة على هذا الجهاز أو نقلها إلى جهاز كمبيوتر باستخدام كابل USB. \n\n"<b>"النسخ الاحتياطي للتطبيقات"</b>" \nستتم إزالة جميع التطبيقات المخزنة على <xliff:g id="NAME_6">^1</xliff:g> هذه وكذلك سيتم محو بياناتها. وللاحتفاظ بهذه التطبيقات، يمكنك نقلها إلى وحدة تخزين بديلة على هذا الجهاز."</string>
- <string name="storage_internal_unmount_details" msgid="4667435317528624039"><b>"عند إخراج <xliff:g id="NAME_0">^1</xliff:g> هذه، فإن التطبيقات المخزنة عليها ستتوقف عن العمل ولن تكون ملفات الوسائط المخزنة عليها متاحة حتى يتم إعادة إدخالها."</b>" \n\nلقد تمت تهيئة <xliff:g id="NAME_1">^1</xliff:g> للعمل على هذا الجهاز فقط. ولن تعمل على أي أجهزة أخرى."</string>
+ <string name="storage_internal_unmount_details" msgid="4667435317528624039"><b>"عند إخراج <xliff:g id="NAME_0">^1</xliff:g> هذه، فإن التطبيقات المخزنة عليها ستتوقف عن العمل ولن تكون ملفات الوسائط المخزنة عليها متاحة حتى يتم إعادة إدخالها."</b>" \n\nلقد تم إعداد <xliff:g id="NAME_1">^1</xliff:g> للعمل على هذا الجهاز فقط. ولن تعمل على أي أجهزة أخرى."</string>
<string name="storage_internal_forget_details" msgid="5655856574682184453">"لاستخدام التطبيقات أو الصور أو البيانات التي يحتوي عليها <xliff:g id="NAME">^1</xliff:g> يمكنك إعادة إدخاله. \n\nبدلاً من ذلك، يمكنك اختيار حذف وحدة التخزين هذه إذا لم يكن الجهاز متاحًا. \n\nوإذا اخترت الحذف، فستفقد جميع البيانات التي يحتوي عليها الجهاز للأبد. \n\nويمكنك إعادة تثبيت التطبيقات لاحقًا، إلا أنه سيتم فقد بياناتها المخزنة على هذا الجهاز."</string>
<string name="storage_internal_forget_confirm_title" msgid="331032276130605241">"هل تريد حذف <xliff:g id="NAME">^1</xliff:g>؟"</string>
<string name="storage_internal_forget_confirm" msgid="3052483375203727176">"سيتم فقد كل التطبيقات والصور والبيانات المخزنة على <xliff:g id="NAME">^1</xliff:g> هذه للأبد."</string>
@@ -1544,7 +1544,7 @@
<string name="storage_wizard_format_confirm_title" msgid="7785358616068633439">"التنسيق كوحدة تخزين داخلية"</string>
<string name="storage_wizard_format_confirm_body" msgid="4107762933332992624">"يتطلب هذا أن يتم تنسيق <xliff:g id="NAME_0">^1</xliff:g> لجعلها آمنة. \n\nبعد التنسيق، لن تعمل <xliff:g id="NAME_1">^1</xliff:g> هذه إلا على هذا الجهاز. \n\n"<b>"يؤدي التنسيق إلى محو جميع البيانات المخزنة حاليًا على <xliff:g id="NAME_2">^1</xliff:g>."</b>" ولتجنب فقد البيانات، يمكنك نسخها احتياطيًا."</string>
<string name="storage_wizard_format_confirm_public_title" msgid="5866830103788091426">"التهيئة كوحدة تخزين محمولة"</string>
- <string name="storage_wizard_format_confirm_public_body" msgid="1451308701654703353">"يتطلب هذا تهيئة <xliff:g id="NAME_0">^1</xliff:g>. \n\n"<b>"وتجدر الإشارة إلى أن التهيئة ستؤدي إلى محو جميع البيانات المخزنة حاليًا على <xliff:g id="NAME_1">^1</xliff:g>."</b>" لتجنب فقد البيانات، يمكنك الاحتفاظ بنسخة احتياطية منها."</string>
+ <string name="storage_wizard_format_confirm_public_body" msgid="1451308701654703353">"يتطلب هذا تهيئة <xliff:g id="NAME_0">^1</xliff:g>. \n\n"<b>"وتجدر الإشارة إلى أن الإعداد سيؤدي إلى محو جميع البيانات المخزنة حاليًا على <xliff:g id="NAME_1">^1</xliff:g>."</b>" لتجنب فقد البيانات، يمكنك الاحتفاظ بنسخة احتياطية منها."</string>
<string name="storage_wizard_format_confirm_next" msgid="236947984802247625">"محو البيانات والتنسيق"</string>
<string name="storage_wizard_format_progress_title" msgid="6905902731208646436">"جارٍ تنسيق <xliff:g id="NAME">^1</xliff:g>…"</string>
<string name="storage_wizard_format_progress_body" msgid="5346709539457190419">"لا تُزِل <xliff:g id="NAME">^1</xliff:g> أثناء تنفيذ عملية التنسيق."</string>
@@ -1725,7 +1725,7 @@
<string name="location_title" msgid="8664674161765477168">"موقعي"</string>
<string name="managed_profile_location_switch_title" msgid="8157384427925389680">"موقع الملف الشخصي للعمل"</string>
<string name="location_app_level_permissions" msgid="1298041503927632960">"إذن التطبيقات"</string>
- <string name="location_app_permission_summary_location_off" msgid="541372845344796336">"تم إيقاف خدمة الموقع الجغرافي."</string>
+ <string name="location_app_permission_summary_location_off" msgid="541372845344796336">"الموقع الجغرافي غير مفعّل"</string>
<plurals name="location_app_permission_summary_location_on" formatted="false" msgid="7904821382328758218">
<item quantity="zero">لدى <xliff:g id="BACKGROUND_LOCATION_APP_COUNT_2">%1$d</xliff:g> من أصل <xliff:g id="TOTAL_LOCATION_APP_COUNT_3">%2$d</xliff:g> تطبيق إذن وصول غير محدود.</item>
<item quantity="two">لدى <xliff:g id="BACKGROUND_LOCATION_APP_COUNT_2">%1$d</xliff:g> من أصل <xliff:g id="TOTAL_LOCATION_APP_COUNT_3">%2$d</xliff:g> تطبيق إذن وصول غير محدود.</item>
@@ -1801,8 +1801,8 @@
<string name="lockpassword_draw_your_pattern_again_header" msgid="9017394036814402348">"ارسم النقش مرة أخرى"</string>
<string name="lockpassword_choose_lock_generic_header" msgid="4418423132980560119">"اختيار طريقة فتح القفل"</string>
<string name="lockpassword_password_set_toast" msgid="601928982984489868">"تم ضبط كلمة المرور"</string>
- <string name="lockpassword_pin_set_toast" msgid="172594825722240059">"تم تعيين رمز PIN"</string>
- <string name="lockpassword_pattern_set_toast" msgid="6923260369475481406">"تم تعيين النقش"</string>
+ <string name="lockpassword_pin_set_toast" msgid="172594825722240059">"تم ضبط رمز PIN"</string>
+ <string name="lockpassword_pattern_set_toast" msgid="6923260369475481406">"تم ضبط النقش"</string>
<string name="lockpassword_choose_your_password_header_for_face" msgid="8823110536502072216">"لاستخدام المصادقة بالوجه، اضبط كلمة المرور"</string>
<string name="lockpassword_choose_your_pattern_header_for_face" msgid="5563793748503883666">"لاستخدام المصادقة بالوجه، اضبط النمط"</string>
<string name="lockpassword_choose_your_pin_header_for_face" msgid="7238352632535405068">"لاستخدام المصادقة بالوجه، اضبط رقم التعريف الشخصي"</string>
@@ -1913,7 +1913,7 @@
<string name="app_factory_reset" msgid="8718986000278776272">"إزالة التحديثات"</string>
<string name="auto_launch_enable_text" msgid="3372898942144027341">"لقد اخترت تشغيل هذا التطبيق بشكل تلقائي لبعض الإجراءات."</string>
<string name="always_allow_bind_appwidgets_text" msgid="2286211654774611037">"لقد اخترت السماح لهذا التطبيق بإنشاء الأدوات والوصول إلى بياناتها."</string>
- <string name="auto_launch_disable_text" msgid="8560921288036801416">"لم يتم تعيين إعدادات تلقائية."</string>
+ <string name="auto_launch_disable_text" msgid="8560921288036801416">"لم يتم ضبط إعدادات تلقائية."</string>
<string name="clear_activities" msgid="2068014972549235347">"محو الإعدادات التلقائية"</string>
<string name="screen_compatibility_text" msgid="1768064020294301496">"ربما لم يتم تصميم هذا التطبيق ليلائم شاشتك، يمكنك التحكم في كيفية ضبطه ليلائم شاشتك هنا."</string>
<string name="ask_compatibility" msgid="6687958195768084807">"السؤال عند الإطلاق"</string>
@@ -2144,7 +2144,7 @@
<string name="accessibility_screen_magnification_navbar_short_summary" msgid="5418767043532322397">"انقر على أحد الأزرار للتكبير"</string>
<string name="accessibility_screen_magnification_summary" msgid="3363006902079431772"><b>"للتكبير أو التصغير"</b>"، انقر على الشاشة 3 مرات بسرعة.\n"<ul><li>"اسحب بإصبعين أو أكثر للتمرير"</li>\n<li>"اضغط بإصبعين أو أكثر على الشاشة لضبط التكبير/التصغير"</li></ul>\n\n<b>"للتكبير أو التصغير مؤقتًا"</b>"، انقر على الشاشة 3 مرات بسرعة واستمر بالضغط بإصبعك بعد النقرة الثالثة.\n"<ul><li>"اسحب للتنقل على الشاشة"</li>\n<li>"ارفع إصبعك للتصغير"</li></ul>\n\n"لا يمكنك استخدام التكبير عند استخدام لوحة المفاتيح وشريط التنقل."</string>
<string name="accessibility_screen_magnification_navbar_summary" msgid="4726360285256503132">"عند تفعيل ميزة التكبير، استخدم زر إمكانية الوصول في أسفل الشاشة للتكبير بسرعة.\n\n"<b>"للتكبير أو التصغير"</b>"، انقر على زر إمكانية الوصول، ثم انقر في أي مكان على الشاشة.\n"<ul><li>"اسحب بإصبعين أو أكثر للتمرير"</li>\n<li>"اضغط بإصبعين أو أكثر على الشاشة لضبط التكبير/التصغير"</li></ul>\n\n<b>"للتكبير أو التصغير مؤقتًا"</b>"، انقر على زر إمكانية الوصول، ثم المس أي موضع على الشاشة مع الاستمرار.\n"<ul><li>"اسحب للتنقل على الشاشة"</li>\n<li>"ارفع إصبعك للتصغير"</li></ul>\n\n"لا يمكنك استخدام التكبير عند استخدام لوحة المفاتيح وشريط التنقل."</string>
- <string name="accessibility_screen_magnification_navbar_configuration_warning" msgid="6477234309484795550">"تم تعيين زر إمكانية الوصول لخدمة <xliff:g id="SERVICE">%1$s</xliff:g>. لاستخدام التكبير، المس زر إمكانية الوصول مع الاستمرار ثم اختر التكبير."</string>
+ <string name="accessibility_screen_magnification_navbar_configuration_warning" msgid="6477234309484795550">"تم ضبط زر إمكانية الوصول لخدمة <xliff:g id="SERVICE">%1$s</xliff:g>. لاستخدام التكبير، المس زر إمكانية الوصول مع الاستمرار ثم اختر التكبير."</string>
<string name="accessibility_global_gesture_preference_title" msgid="3842279082831426816">"مفتاح الاختصار لمستوى الصوت"</string>
<string name="accessibility_shortcut_service_title" msgid="3516052294376744060">"خدمة الاختصار"</string>
<string name="accessibility_shortcut_service_on_lock_screen_title" msgid="1279441617927949980">"السماح من شاشة القفل"</string>
@@ -2335,7 +2335,7 @@
<string name="print_restart" msgid="4090462480288441779">"إعادة تشغيل"</string>
<string name="print_cancel" msgid="4567831028966698753">"إلغاء"</string>
<string name="print_job_summary" msgid="438156926959424058">"<xliff:g id="PRINTER">%1$s</xliff:g>\n<xliff:g id="TIME">%2$s</xliff:g>"</string>
- <string name="print_configuring_state_title_template" msgid="5052801061241050737">"جارٍ تهيئة <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string>
+ <string name="print_configuring_state_title_template" msgid="5052801061241050737">"جارٍ إعداد <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string>
<string name="print_printing_state_title_template" msgid="8796814912920963803">"جارٍ طباعة <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string>
<string name="print_cancelling_state_title_template" msgid="4627355699517405600">"جارٍ إلغاء <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string>
<string name="print_failed_state_title_template" msgid="6575080578316671101">"خطأ في الطابعة في تنفيذ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string>
@@ -2546,7 +2546,7 @@
<string name="battery_desc_standby" product="tablet" msgid="2941777996429933419">"البطارية المستخدمة عندما يكون الجهاز اللوحي خاملاً"</string>
<string name="battery_desc_standby" product="default" msgid="8889482616564520287">"يتم استخدام البطارية عندما يكون الهاتف في وضع الخمول"</string>
<string name="battery_desc_radio" msgid="5119078473833865414">"البطارية مستخدمة بواسطة الراديو الخلوي"</string>
- <string name="battery_sugg_radio" msgid="3616364509738133415">"تبديل إلى وضع الطائرة للحفاظ على الطاقة في المناطق التي لا توجد بها تغطية للشبكة"</string>
+ <string name="battery_sugg_radio" msgid="3616364509738133415">"تبديل إلى وضع الطيران للحفاظ على الطاقة في المناطق التي لا توجد بها تغطية للشبكة"</string>
<string name="battery_desc_flashlight" msgid="4574819522143720917">"طاقة البطارية المستخدمة بواسطة ضوء الفلاش"</string>
<string name="battery_desc_camera" msgid="517966830222999462">"طاقة البطارية التي استهلكتها الكاميرا"</string>
<string name="battery_desc_display" msgid="6701005808894183097">"طاقة البطارية المستخدمة بواسطة العرض والإضاءة الخلفية"</string>
@@ -3295,8 +3295,8 @@
<string name="default_sound" msgid="6675629744816442953">"الصوت التلقائي"</string>
<string name="sound_settings_summary" msgid="8467549670633195109">"مستوى صوت الرنين على <xliff:g id="PERCENTAGE">%1$s</xliff:g>"</string>
<string name="sound_dashboard_summary" msgid="5187301919242823508">"مستوى الصوت والاهتزاز ووضع\"عدم الإزعاج\""</string>
- <string name="sound_settings_summary_vibrate" msgid="2194491116884798590">"تم تعيين الرنين على اهتزاز"</string>
- <string name="sound_settings_summary_silent" msgid="899823817462768876">"تم تعيين الرنين على صامت"</string>
+ <string name="sound_settings_summary_vibrate" msgid="2194491116884798590">"تم ضبط الرنين على اهتزاز"</string>
+ <string name="sound_settings_summary_silent" msgid="899823817462768876">"تم ضبط الرنين على صامت"</string>
<string name="sound_settings_example_summary" msgid="2091822107298841827">"مستوى صوت الرنين على ۸۰٪"</string>
<string name="media_volume_option_title" msgid="3553411883305505682">"مستوى صوت الوسائط"</string>
<string name="remote_media_volume_option_title" msgid="6355710054191873836">"مستوى صوت الإرسال"</string>
@@ -3867,7 +3867,7 @@
<string name="filter_notif_blocked_channels" msgid="6110799550327612670">"الفئات: متوفقة"</string>
<string name="filter_notif_dnd_channels" msgid="3251570137256371092">"الفئات: تتجاوز خيار \"عدم الإزعاج\""</string>
<string name="advanced_apps" msgid="6643869089344883537">"إعدادات متقدّمة"</string>
- <string name="configure_apps" msgid="4066683118857400943">"تهيئة التطبيقات"</string>
+ <string name="configure_apps" msgid="4066683118857400943">"إعداد التطبيقات"</string>
<string name="unknown_app" msgid="2312052973570376877">"تطبيق غير معروف"</string>
<string name="app_permissions" msgid="3215958256821756086">"مدير الأذونات"</string>
<string name="app_permissions_summary" msgid="8785798165776061594">"التطبيقات التي تستخدم <xliff:g id="APPS">%1$s</xliff:g>"</string>
@@ -3973,7 +3973,7 @@
<string name="usb_use_MIDI" msgid="4710632870781041401">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="1770966187150010947">"يمكنك استخدام هذا الجهاز باعتباره MIDI"</string>
<string name="usb_use" msgid="8940500223316278632">"استخدام USB في"</string>
- <string name="usb_default_label" msgid="7471316635263936101">"تهيئة USB التلقائية"</string>
+ <string name="usb_default_label" msgid="7471316635263936101">"إعداد USB التلقائي"</string>
<string name="usb_default_info" msgid="953775292571786528">"عند الاتصال بجهاز آخر وإلغاء قفل هاتفك، سيتم تطبيق هذه الإعدادات. لذلك يجب الاتصال بالأجهزة الموثوق بها فقط."</string>
<string name="usb_pref" msgid="6194821550693495068">"USB"</string>
<string name="usb_preference" msgid="7092987095048592826">"إعدادات USB"</string>
@@ -4132,7 +4132,7 @@
<string name="condition_expand_show" msgid="4118818022763913777">"إظهار"</string>
<string name="condition_expand_hide" msgid="1112721783024332643">"إخفاء"</string>
<string name="condition_hotspot_title" msgid="4143299802283098506">"نقطة الاتصال مفعّلة"</string>
- <string name="condition_airplane_title" msgid="8484582712516148433">"وضع الطائرة قيد التفعيل"</string>
+ <string name="condition_airplane_title" msgid="8484582712516148433">"وضع الطيران قيد التفعيل"</string>
<string name="condition_airplane_summary" msgid="3021193218494740742">"الشبكات غير متوفرة"</string>
<string name="condition_zen_title" msgid="2128184708916052585">"تمّ تفعيل \"الرجاء عدم الإزعاج\""</string>
<string name="condition_zen_summary_phone_muted" msgid="4396050395522974654">"تم كتم صوت الهاتف."</string>
@@ -4217,7 +4217,7 @@
<string name="set_data_limit" msgid="5043770023229990674">"ضبط الحد الأقصى للبيانات"</string>
<string name="data_limit" msgid="5793521160051596228">"الحد الأقصى للبيانات"</string>
<string name="data_usage_template" msgid="6848274347956096882">"<xliff:g id="ID_1">%1$s</xliff:g> مستخدمة خلال <xliff:g id="ID_2">%2$s</xliff:g>"</string>
- <string name="configure" msgid="8232696842838580549">"تهيئة"</string>
+ <string name="configure" msgid="8232696842838580549">"إعداد"</string>
<string name="data_usage_other_apps" msgid="7002491980141402084">"التطبيقات الأخرى المضمّنة في الاستخدام"</string>
<plurals name="data_saver_unrestricted_summary" formatted="false" msgid="6046013861315713697">
<item quantity="zero">هناك <xliff:g id="COUNT">%1$d</xliff:g> تطبيق مسموح له باستخدام البيانات بدون قيود عند تفعيل ميزة \"توفير البيانات\"</item>
@@ -4436,7 +4436,7 @@
<string name="domain_url_section_title" msgid="206403507921518321">"التطبيقات المثبَّتة"</string>
<string name="automatic_storage_manager_activation_warning" msgid="2630083316417707308">"تتم إدارة مساحة التخزين لجهازك الآن عن طريق مدير مساحة التخزين"</string>
<string name="account_for_section_header" msgid="5975241715840642563">"حسابات <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
- <string name="configure_section_header" msgid="6988981883075615136">"تهيئة"</string>
+ <string name="configure_section_header" msgid="6988981883075615136">"إعداد"</string>
<string name="auto_sync_account_title" msgid="2394463123733529506">"مزامنة البيانات تلقائيًا"</string>
<string name="auto_sync_personal_account_title" msgid="6844465157916100655">"مزامنة البيانات الشخصية تلقائيًا"</string>
<string name="auto_sync_work_account_title" msgid="2403222633447522376">"مزامنة بيانات العمل تلقائيًا"</string>
@@ -4486,7 +4486,7 @@
<string name="enterprise_privacy_always_on_vpn_device" msgid="2022700916516458213">"تم تفعيل إعداد \"شبكة افتراضية خاصة (VPN) دائمة التفعيل\""</string>
<string name="enterprise_privacy_always_on_vpn_personal" msgid="5644065780843002044">"تم تفعيل إعداد \"شبكة افتراضية خاصة (VPN) دائمة التفعيل\" في الملف الشخصي"</string>
<string name="enterprise_privacy_always_on_vpn_work" msgid="6443089897985373564">"تم تفعيل \"شبكة افتراضية خاصة (VPN) دائمة التفعيل\" في الملف الشخصي للعمل"</string>
- <string name="enterprise_privacy_global_http_proxy" msgid="3862135895716080830">"تم تعيين الخادم الوكيل HTTP العام"</string>
+ <string name="enterprise_privacy_global_http_proxy" msgid="3862135895716080830">"تم ضبط الخادم الوكيل HTTP العام"</string>
<string name="enterprise_privacy_ca_certs_device" msgid="7715658848470643878">"بيانات الاعتماد الموثوقة"</string>
<string name="enterprise_privacy_ca_certs_personal" msgid="1356447417193483802">"بيانات اعتماد موثوقة في ملفك الشخصي"</string>
<string name="enterprise_privacy_ca_certs_work" msgid="836419648894546893">"بيانات اعتماد موثوقة في ملفك الشخصي للعمل"</string>
@@ -4594,7 +4594,7 @@
<string name="show_first_crash_dialog" msgid="3682063068903692710">"عرض مربع حوار الأعطال دائمًا"</string>
<string name="show_first_crash_dialog_summary" msgid="8197987550025401754">"عرض مربع الحوار في كل مرة يتعطل فيها تطبيق"</string>
<string name="angle_enabled_app" msgid="4359266182151708733">"اختيار التطبيق الذي يستخدم ANGLE"</string>
- <string name="angle_enabled_app_not_set" msgid="7428910515748621910">"لم يتم تعيين تطبيق لاستخدام ANGLE"</string>
+ <string name="angle_enabled_app_not_set" msgid="7428910515748621910">"لم يتم ضبط تطبيق لاستخدام ANGLE"</string>
<string name="angle_enabled_app_set" msgid="7313088703610569320">"التطبيق الذي يستخدم ANGLE: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
<string name="game_driver_dashboard_title" msgid="219443350404091201">"إعدادات Game Driver المفضّلة"</string>
<string name="game_driver_dashboard_summary" msgid="1500674075618790528">"تعديل إعدادات Game Driver"</string>
@@ -4781,7 +4781,7 @@
<string name="settings_panel_title" msgid="8181989386118232534">"لوحة الإعدادات"</string>
<string name="internet_connectivity_panel_title" msgid="341712994620215750">"اتصال الإنترنت"</string>
<string name="volume_connectivity_panel_title" msgid="4998755371496690971">"مستوى الصوت"</string>
- <string name="mobile_data_ap_mode_disabled" msgid="2452716524753472885">"غير متاح أثناء وضع الطائرة"</string>
+ <string name="mobile_data_ap_mode_disabled" msgid="2452716524753472885">"غير متاح أثناء وضع الطيران"</string>
<string name="force_desktop_mode" msgid="6973100177551040740">"فرض وضع سطح المكتب"</string>
<string name="force_desktop_mode_summary" msgid="8865007610266954719">"فرض وضع سطح المكتب التجريبي على شاشات العرض الثانوية"</string>
<string name="hwui_force_dark_title" msgid="3744825212652331461">"إلغاء ميزة فرض تعتيم الشاشة"</string>
diff --git a/tests/CarDeveloperOptions/res/values-bs/strings.xml b/tests/CarDeveloperOptions/res/values-bs/strings.xml
index 602a26b..2c0a895 100644
--- a/tests/CarDeveloperOptions/res/values-bs/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-bs/strings.xml
@@ -278,8 +278,8 @@
<string name="dlg_remove_locales_error_title" msgid="9090578326002163975">"Ne mogu se ukloniti svi jezici"</string>
<string name="dlg_remove_locales_error_message" msgid="6799897638891903618">"Zadržite najmanje jedan preferirani jezik"</string>
<string name="locale_not_translated" msgid="7943669576006420058">"Možda nije dostupno u nekim aplikacijama"</string>
- <string name="action_drag_label_move_up" msgid="2074064283966078352">"Pomjeri prema gore"</string>
- <string name="action_drag_label_move_down" msgid="1367989732445492291">"Pomjeri prema dolje"</string>
+ <string name="action_drag_label_move_up" msgid="2074064283966078352">"Pomjeri nagore"</string>
+ <string name="action_drag_label_move_down" msgid="1367989732445492291">"Pomjeri nadolje"</string>
<string name="action_drag_label_move_top" msgid="2033098833739345957">"Pomjeri na vrh"</string>
<string name="action_drag_label_move_bottom" msgid="5583190721915611567">"Pomjeri na dno"</string>
<string name="action_drag_label_remove" msgid="3362982836323040394">"Ukloni jezik"</string>
diff --git a/tests/CarDeveloperOptions/res/values-ca/strings.xml b/tests/CarDeveloperOptions/res/values-ca/strings.xml
index 4694958..a3870d7 100644
--- a/tests/CarDeveloperOptions/res/values-ca/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-ca/strings.xml
@@ -1648,7 +1648,7 @@
<string name="mobile_connect_to_internet" msgid="6031886097365170913">"Connecta a Internet"</string>
<string name="location_title" msgid="8664674161765477168">"La meva ubicació"</string>
<string name="managed_profile_location_switch_title" msgid="8157384427925389680">"Ubicació per al perfil de treball"</string>
- <string name="location_app_level_permissions" msgid="1298041503927632960">"Permís d\'aplicacions"</string>
+ <string name="location_app_level_permissions" msgid="1298041503927632960">"Permisos de les aplicacions"</string>
<string name="location_app_permission_summary_location_off" msgid="541372845344796336">"La ubicació està desactivada"</string>
<plurals name="location_app_permission_summary_location_on" formatted="false" msgid="7904821382328758218">
<item quantity="other">Aplicacions que tenen accés il·limitat: <xliff:g id="BACKGROUND_LOCATION_APP_COUNT_2">%1$d</xliff:g> de <xliff:g id="TOTAL_LOCATION_APP_COUNT_3">%2$d</xliff:g></item>
diff --git a/tests/CarDeveloperOptions/res/values-cs/strings.xml b/tests/CarDeveloperOptions/res/values-cs/strings.xml
index 76e3baa..ea461a7 100644
--- a/tests/CarDeveloperOptions/res/values-cs/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-cs/strings.xml
@@ -1677,7 +1677,7 @@
<string name="sms_change_default_no_previous_dialog_text" msgid="4680224695080527907">"Chcete pro zprávy SMS používat aplikaci <xliff:g id="NEW_APP">%s</xliff:g>?"</string>
<string name="network_scorer_picker_title" msgid="1691073966560952916">"Poskytovatel hodnocení sítí"</string>
<string name="network_scorer_picker_none_preference" msgid="6448280557733231737">"Žádné"</string>
- <string name="network_scorer_change_active_dialog_title" msgid="4274159562371475090">"Změnit nastavení Google Wi-Fi Assistant?"</string>
+ <string name="network_scorer_change_active_dialog_title" msgid="4274159562371475090">"Změnit asistenta pro Wi-Fi?"</string>
<string name="network_scorer_change_active_dialog_text" msgid="4264089809189760730">"Chcete spravovat síťová připojení pomocí aplikace <xliff:g id="NEW_APP">%1$s</xliff:g> namísto aplikace <xliff:g id="CURRENT_APP">%2$s</xliff:g>?"</string>
<string name="network_scorer_change_active_no_previous_dialog_text" msgid="6394483538843474495">"Chcete spravovat síťová připojení pomocí aplikace <xliff:g id="NEW_APP">%s</xliff:g>?"</string>
<string name="mobile_unknown_sim_operator" msgid="872589370085135817">"Operátor SIM karty není znám"</string>
diff --git a/tests/CarDeveloperOptions/res/values-es/strings.xml b/tests/CarDeveloperOptions/res/values-es/strings.xml
index 4a8dcad..b8b0b64 100644
--- a/tests/CarDeveloperOptions/res/values-es/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-es/strings.xml
@@ -916,7 +916,7 @@
<string name="passpoint_content" msgid="340527524510304327">"Credenciales de <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_eap_method" msgid="3752116941487485859">"Método EAP"</string>
<string name="please_select_phase2" msgid="5848080896810435677">"Autenticación de fase 2"</string>
- <string name="wifi_eap_ca_cert" msgid="1496395241849383785">"Certificado de CA"</string>
+ <string name="wifi_eap_ca_cert" msgid="1496395241849383785">"Certificado AC"</string>
<string name="wifi_eap_domain" msgid="3298302320003640130">"Dominio"</string>
<string name="wifi_eap_user_cert" msgid="6786839531765719173">"Certificado de usuario"</string>
<string name="wifi_eap_identity" msgid="5280457017705738773">"Identidad"</string>
@@ -2747,7 +2747,7 @@
<string name="vpn_ipsec_identifier" msgid="1230238784830362888">"Identificador de IPSec"</string>
<string name="vpn_ipsec_secret" msgid="1531503910441962752">"Clave precompartida de IPSec"</string>
<string name="vpn_ipsec_user_cert" msgid="2762078384595366852">"Certificado de usuario de IPSec"</string>
- <string name="vpn_ipsec_ca_cert" msgid="5537567128766402789">"Certificado de CA de IPSec"</string>
+ <string name="vpn_ipsec_ca_cert" msgid="5537567128766402789">"Certificado AC de IPSec"</string>
<string name="vpn_ipsec_server_cert" msgid="3066696943831527934">"Certificado del servidor IPSec"</string>
<string name="vpn_show_options" msgid="7672984921872882859">"Mostrar opciones avanzadas"</string>
<string name="vpn_search_domains" msgid="8469394307693909080">"Dominios de búsqueda de DNS"</string>
@@ -2809,13 +2809,13 @@
<string name="trusted_credentials_enable_label" msgid="8991649977058280799">"Habilitar"</string>
<string name="trusted_credentials_remove_label" msgid="530728557358501000">"Quitar"</string>
<string name="trusted_credentials_trust_label" msgid="1580022708780121664">"Confiar"</string>
- <string name="trusted_credentials_enable_confirmation" msgid="936560980286792656">"¿Quieres habilitar el certificado de CA del sistema?"</string>
- <string name="trusted_credentials_disable_confirmation" msgid="643386483024801539">"¿Quieres inhabilitar el certificado de CA del sistema?"</string>
- <string name="trusted_credentials_remove_confirmation" msgid="3731678919848637342">"¿Eliminar el certificado de CA de usuario de forma permanente?"</string>
+ <string name="trusted_credentials_enable_confirmation" msgid="936560980286792656">"¿Quieres habilitar el certificado AC del sistema?"</string>
+ <string name="trusted_credentials_disable_confirmation" msgid="643386483024801539">"¿Quieres inhabilitar el certificado AC del sistema?"</string>
+ <string name="trusted_credentials_remove_confirmation" msgid="3731678919848637342">"¿Eliminar el certificado AC de usuario de forma permanente?"</string>
<string name="credential_contains" msgid="483346955378412119">"Esta entrada incluye:"</string>
<string name="one_userkey" msgid="5349738921509013845">"una clave de usuario"</string>
<string name="one_usercrt" msgid="856282310586987313">"un certificado de usuario"</string>
- <string name="one_cacrt" msgid="4757720453112732485">"un certificado de CA"</string>
+ <string name="one_cacrt" msgid="4757720453112732485">"un certificado AC"</string>
<string name="n_cacrts" msgid="7539893176217891549">"%d certificados de CA"</string>
<string name="user_credential_title" msgid="6237611303219831419">"Detalles de credenciales"</string>
<string name="user_credential_removed" msgid="6243576567538844852">"Quitar credencial: <xliff:g id="CREDENTIAL_NAME">%s</xliff:g>"</string>
diff --git a/tests/CarDeveloperOptions/res/values-fa/strings.xml b/tests/CarDeveloperOptions/res/values-fa/strings.xml
index 785e1c2..1b0b699 100644
--- a/tests/CarDeveloperOptions/res/values-fa/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-fa/strings.xml
@@ -935,14 +935,14 @@
<string name="wifi_privacy_settings" msgid="4462092795794247809">"حریم خصوصی"</string>
<string name="wifi_privacy_settings_ephemeral_summary" msgid="2411375348287064283">"MAC تصادفی"</string>
<string name="wifi_dpp_add_device_to_network" msgid="8871041525483253430">"افزودن دستگاه"</string>
- <string name="wifi_dpp_center_qr_code" msgid="3826108361797476758">"برای افزودن دستگاه به «<xliff:g id="SSID">%1$s</xliff:g>»، کد QR را در مرکز پنجره زیر قرار دهید"</string>
- <string name="wifi_dpp_scan_qr_code" msgid="6021600592661235546">"اسکن کد QR"</string>
- <string name="wifi_dpp_scan_qr_code_join_network" msgid="3085162928804379545">"برای اتصال به «<xliff:g id="SSID">%1$s</xliff:g>»، کد QR را در مرکز پنجره زیر قرار دهید"</string>
- <string name="wifi_dpp_scan_qr_code_join_unknown_network" msgid="5682308317067290738">"با اسکن کردن کد QR، به Wi‑Fi بپیوندید"</string>
+ <string name="wifi_dpp_center_qr_code" msgid="3826108361797476758">"برای افزودن دستگاه به «<xliff:g id="SSID">%1$s</xliff:g>»، رمزینه پاسخسریع را در مرکز پنجره زیر قرار دهید"</string>
+ <string name="wifi_dpp_scan_qr_code" msgid="6021600592661235546">"اسکن رمزینه پاسخسریع"</string>
+ <string name="wifi_dpp_scan_qr_code_join_network" msgid="3085162928804379545">"برای اتصال به «<xliff:g id="SSID">%1$s</xliff:g>»، رمزینه پاسخسریع را در مرکز پنجره زیر قرار دهید"</string>
+ <string name="wifi_dpp_scan_qr_code_join_unknown_network" msgid="5682308317067290738">"با اسکن کردن رمزینه پاسخسریع، به Wi‑Fi بپیوندید"</string>
<string name="wifi_dpp_share_wifi" msgid="1724161216219646284">"استفاده مشترک از Wi‑Fi"</string>
- <string name="wifi_dpp_scan_qr_code_with_another_device" msgid="4357387474444884759">"برای اتصال به «<xliff:g id="SSID">%1$s</xliff:g>»، این کد QR را اسکن کنید و گذرواژه مربوطه را همرسانی کنید"</string>
- <string name="wifi_dpp_scan_open_network_qr_code_with_another_device" msgid="572011882416511818">"برای اتصال به «<xliff:g id="SSID">%1$s</xliff:g>»، این کد QR را اسکن کنید"</string>
- <string name="wifi_dpp_could_not_detect_valid_qr_code" msgid="27667719861826438">"کد QR خوانده نشد. کد را در مرکز قرار دهید و دوباره امتحان کنید"</string>
+ <string name="wifi_dpp_scan_qr_code_with_another_device" msgid="4357387474444884759">"برای اتصال به «<xliff:g id="SSID">%1$s</xliff:g>»، این رمزینه پاسخسریع را اسکن کنید و گذرواژه مربوطه را همرسانی کنید"</string>
+ <string name="wifi_dpp_scan_open_network_qr_code_with_another_device" msgid="572011882416511818">"برای اتصال به «<xliff:g id="SSID">%1$s</xliff:g>»، این رمزینه پاسخسریع را اسکن کنید"</string>
+ <string name="wifi_dpp_could_not_detect_valid_qr_code" msgid="27667719861826438">"رمزینه پاسخسریع خوانده نشد. کد را در مرکز قرار دهید و دوباره امتحان کنید"</string>
<string name="wifi_dpp_failure_authentication_or_configuration" msgid="9142051662156233679">"دوباره امتحان کنید. اگر مشکل همچنان ادامه دارد، با سازنده دستگاه تماس بگیرید"</string>
<string name="wifi_dpp_failure_not_compatible" msgid="4320027179973678283">"مشکلی رخ داده است"</string>
<string name="wifi_dpp_failure_timeout" msgid="5060065168142109420">"مطمئن شوید دستگاه متصل، شارژ و روشن شده است"</string>
@@ -964,7 +964,7 @@
<string name="wifi_dpp_wifi_password" msgid="8007558344032612455">"گذرواژه Wi-Fi: <xliff:g id="PASSWORD">%1$s</xliff:g>"</string>
<string name="wifi_dpp_hotspot_password" msgid="6172326289042241924">"گذرواژه نقطه اتصال: <xliff:g id="PASSWORD">%1$s</xliff:g>"</string>
<string name="wifi_dpp_add_device" msgid="1347056725253936358">"افزودن دستگاه"</string>
- <string name="wifi_dpp_connect_network_using_qr_code" msgid="115993715600532357">"بااستفاده از کد QR، به این شبکه متصل شوید"</string>
+ <string name="wifi_dpp_connect_network_using_qr_code" msgid="115993715600532357">"بااستفاده از رمزینه پاسخسریع، به این شبکه متصل شوید"</string>
<string name="retry" msgid="8500839563577344702">"امتحان مجدد"</string>
<string name="wifi_shared" msgid="5054256778276524960">"اشتراکگذاری با دیگر استفادهکنندگان از دستگاه"</string>
<string name="wifi_unchanged" msgid="6804964646942333992">"(بدون تغییر)"</string>
@@ -1980,7 +1980,7 @@
<string name="game_controller_settings_category" msgid="9066526500617769463">"دسته کنترل بازی"</string>
<string name="vibrate_input_devices" msgid="3584406079534121467">"تغییر مسیر لرزش"</string>
<string name="vibrate_input_devices_summary" msgid="7503148018220540038">"وقتی متصل شد، لرزش به دسته کنترل بازی ارسال شود"</string>
- <string name="keyboard_layout_dialog_title" msgid="4762706917037085797">"انتخاب طرحبندی صفحهکلید"</string>
+ <string name="keyboard_layout_dialog_title" msgid="4762706917037085797">"انتخاب جانمایی صفحهکلید"</string>
<string name="keyboard_layout_dialog_setup_button" msgid="771293535107618283">"تنظیم طرحبندیهای صفحهکلید"</string>
<string name="keyboard_layout_dialog_switch_hint" msgid="138516114253502182">"برای تغییر، Control-کلید فاصله را فشار هید"</string>
<string name="keyboard_layout_default_label" msgid="8368579311667189793">"پیشفرض"</string>
@@ -2020,7 +2020,7 @@
<string name="input_method_settings_button" msgid="6151412131733672062">"تنظیمات"</string>
<string name="input_methods_settings_label_format" msgid="5927400388781960176">"<xliff:g id="IME_NAME">%1$s</xliff:g> تنظیمات"</string>
<string name="input_methods_and_subtype_enabler_title" msgid="75557930915149416">"انتخاب روشهای ورودی فعال"</string>
- <string name="onscreen_keyboard_settings_summary" msgid="148763210673670769">"تنظیمات صفحهکلید روی صفحه"</string>
+ <string name="onscreen_keyboard_settings_summary" msgid="148763210673670769">"تنظیمات صفحهکلید مجازی"</string>
<string name="builtin_keyboard_settings_title" msgid="3683883402326039724">"صفحهکلید فیزیکی"</string>
<string name="builtin_keyboard_settings_summary" msgid="6498739864479285932">"تنظیمات صفحهکلید فیزیکی"</string>
<string name="gadget_picker_title" msgid="9146981887780645322">"انتخاب اسبابک"</string>
diff --git a/tests/CarDeveloperOptions/res/values-fi/strings.xml b/tests/CarDeveloperOptions/res/values-fi/strings.xml
index 6f55fcb..3a755b9 100644
--- a/tests/CarDeveloperOptions/res/values-fi/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-fi/strings.xml
@@ -1053,7 +1053,7 @@
<string name="wifi_p2p_disconnect_title" msgid="915880461655863812">"Katkaistaanko yhteys?"</string>
<string name="wifi_p2p_disconnect_message" msgid="3745286932812740784">"Jos katkaiset yhteyden, yhteys laitteeseen <xliff:g id="PEER_NAME">%1$s</xliff:g> katkaistaan."</string>
<string name="wifi_p2p_disconnect_multiple_message" msgid="6051173422663731688">"Jos kosketat Katkaise yhteys, yhteys laitteeseen <xliff:g id="PEER_NAME">%1$s</xliff:g> ja <xliff:g id="PEER_COUNT">%2$s</xliff:g> muuhun laitteeseen katkaistaan."</string>
- <string name="wifi_p2p_cancel_connect_title" msgid="2465200999145769427">"Peruutetaanko kutsu?"</string>
+ <string name="wifi_p2p_cancel_connect_title" msgid="2465200999145769427">"Perutaanko kutsu?"</string>
<string name="wifi_p2p_cancel_connect_message" msgid="3752679335020392154">"Haluatko peruuttaa laitteelle <xliff:g id="PEER_NAME">%1$s</xliff:g> lähetetyn yhteydenmuodostuskutsun?"</string>
<string name="wifi_p2p_delete_group_message" msgid="3206660449067701089">"Unohdetaanko tämä ryhmä?"</string>
<string name="wifi_hotspot_checkbox_text" msgid="12062341344410520">"Wi‑Fi-hotspot"</string>
@@ -3789,7 +3789,7 @@
<string name="zen_access_warning_dialog_title" msgid="7704910289810337055">"Myönnetäänkö Älä häiritse -tilan käyttöoikeus sovellukselle <xliff:g id="APP">%1$s</xliff:g>?"</string>
<string name="zen_access_warning_dialog_summary" msgid="2717755746850874577">"Sovellus voi ottaa Älä häiritse -tilan käyttöön tai poistaa sen käytöstä sekä muokata siihen liittyviä asetuksia."</string>
<string name="zen_access_disabled_package_warning" msgid="7086237569177576966">"Tämän täytyy olla käytössä, sillä ilmoitusten käyttöoikeus on myönnetty."</string>
- <string name="zen_access_revoke_warning_dialog_title" msgid="6850994585577513299">"Peruutetaanko sovellukselta <xliff:g id="APP">%1$s</xliff:g> Älä häiritse -tilan käyttöoikeus?"</string>
+ <string name="zen_access_revoke_warning_dialog_title" msgid="6850994585577513299">"Perutaanko sovellukselta <xliff:g id="APP">%1$s</xliff:g> Älä häiritse -tilan käyttöoikeus?"</string>
<string name="zen_access_revoke_warning_dialog_summary" msgid="3487422193181311403">"Kaikki tämän sovelluksen luomat Älä häiritse -säännöt poistetaan."</string>
<string name="ignore_optimizations_on" msgid="4373971641328943551">"Älä optimoi"</string>
<string name="ignore_optimizations_off" msgid="4372289432580282870">"Optimoi"</string>
diff --git a/tests/CarDeveloperOptions/res/values-gu/strings.xml b/tests/CarDeveloperOptions/res/values-gu/strings.xml
index ec8cdb1..cef7fd1 100644
--- a/tests/CarDeveloperOptions/res/values-gu/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-gu/strings.xml
@@ -1791,7 +1791,7 @@
<string name="applications_settings_header" msgid="3766501606045211098">"ઍપ્લિકેશન સેટિંગ્સ"</string>
<string name="install_applications" msgid="7745902974984889179">"અજાણ્યા સ્ત્રોતો"</string>
<string name="install_applications_title" msgid="8164828577588659496">"બધા ઍપ્લિકેશન સ્રોતોને મંજૂરી આપો"</string>
- <string name="recent_app_category_title" msgid="7688788038277126727">"તાજેતરમાં ખોલેલી ઍપ્લિકેશનો"</string>
+ <string name="recent_app_category_title" msgid="7688788038277126727">"તાજેતરમાં ખોલેલી ઍપ"</string>
<string name="see_all_apps_title" msgid="6435061912110347474">"બધી <xliff:g id="COUNT">%1$d</xliff:g> ઍપ્લિકેશન જુઓ"</string>
<string name="install_all_warning" product="tablet" msgid="4580699862358542727">"તમારું ટૅબ્લેટ અને વ્યક્તિગત ડેટા અજાણી ઍપ્લિકેશનોના હુમલા પ્રતિ વધુ સંવેદનશીલ છે. આ સ્રોત પરથી ઍપ્લિકેશનો ઇન્સ્ટૉલ કરીને તમે સંમત થાઓ છો કે તેમનો ઉપયોગ કરવાના પરિણામે તમારા ટૅબ્લેટને થતી કોઈ પણ ક્ષતિ કે ડેટાના નુકસાન માટે તમે જવાબદાર છો."</string>
<string name="install_all_warning" product="default" msgid="7445839116997296358">"તમારો ફોન અને વ્યક્તિગત ડેટા અજાણી ઍપ્લિકેશનોના હુમલા પ્રતિ વધુ સંવેદનશીલ છે. આ સ્રોત પરથી ઍપ્લિકેશનો ઇન્સ્ટૉલ કરીને તમે સંમત થાઓ છો કે તેમનો ઉપયોગ કરવાના પરિણામે તમારા ફોનને થતી કોઈ પણ ક્ષતિ કે ડેટાના નુકસાન માટે તમે જવાબદાર છો."</string>
@@ -3040,12 +3040,12 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="2610085597733526722">"બ્લૂટૂથ, ડ્રાઇવિંગ મોડ"</string>
<string name="connected_devices_dashboard_no_driving_mode_summary" msgid="3524409078596318803">"બ્લૂટૂથ, NFC"</string>
<string name="connected_devices_dashboard_no_driving_mode_no_nfc_summary" msgid="7881286613528299400">"બ્લૂટૂથ"</string>
- <string name="app_and_notification_dashboard_title" msgid="8448096608058843730">"ઍપ્લિકેશનો અને નોટિફિકેશન"</string>
+ <string name="app_and_notification_dashboard_title" msgid="8448096608058843730">"ઍપ અને નોટિફિકેશન"</string>
<string name="app_and_notification_dashboard_summary" msgid="4165181440955038145">"Assistant, તાજેતરની ઍપ, ડિફૉલ્ટ ઍપ"</string>
<string name="notification_settings_work_profile" msgid="7190550347842400029">"કાર્યાલયની પ્રોફાઇલમાં ઍપ માટે નોટિફિકેશન ઍક્સેસ ઉપલબ્ધ નથી."</string>
<string name="account_dashboard_title" msgid="4734300939532555885">"એકાઉન્ટ"</string>
<string name="account_dashboard_default_summary" msgid="6822549669771936206">"કોઈ એકાઉન્ટ ઉમેરવામાં આવ્યાં નથી"</string>
- <string name="app_default_dashboard_title" msgid="6575301028225232193">"ડિફૉલ્ટ ઍપ્લિકેશનો"</string>
+ <string name="app_default_dashboard_title" msgid="6575301028225232193">"ડિફૉલ્ટ ઍપ"</string>
<string name="system_dashboard_summary" msgid="6582464466735779394">"ભાષાઓ, જેશ્ચર સમય, બૅકઅપ"</string>
<string name="search_results_title" msgid="4160717656435503940">"સેટિંગ્સ"</string>
<string name="keywords_wifi" msgid="8477688080895466846">"વાઇફાઇ, વાઇ-ફાઇ, નેટવર્ક કનેક્શન, ઇન્ટરનેટ, વાયરલેસ, ડેટા, વાઇ-ફાઇ"</string>
@@ -3151,7 +3151,7 @@
<string name="screen_locking_sounds_title" msgid="4407110895465866809">"સ્ક્રીન લૉકિંગ ધ્વનિઓ"</string>
<string name="charging_sounds_title" msgid="5070437987230894287">"ચાર્જિંગ સાઉન્ડ અને વાઇબ્રેશન"</string>
<string name="docking_sounds_title" msgid="2573137471605541366">"ડૉકિંગ સાઉન્ડ્સ"</string>
- <string name="touch_sounds_title" msgid="165237488496165652">"ટચ સાઉન્ડ્સ"</string>
+ <string name="touch_sounds_title" msgid="165237488496165652">"ટચ સાઉન્ડ"</string>
<string name="vibrate_on_touch_title" msgid="6360155469279157684">"સ્પર્શ વાઇબ્રેશન"</string>
<string name="vibrate_on_touch_summary" msgid="5504424764028676043">"ટૅપ, કીબોર્ડ અને વધુ માટે સ્પર્શ દ્વારા આપેલ અભિપ્રાય"</string>
<string name="dock_audio_media_title" msgid="1859521680502040781">"ડૉક સ્પીકર ચલાવે છે"</string>
@@ -3280,12 +3280,12 @@
<string name="zen_onboarding_new_setting_summary" msgid="8264430315983860075">"તમે કોઈ નોટિફિકેશન જોઈ અથવા સાંભળી શકશો નહીં. સ્ટાર આપેલા સંપર્કો અને રિપીટ કૉલરના કૉલને પરવાનગી આપવામાં આવે છે."</string>
<string name="zen_onboarding_current_setting_summary" msgid="3569246708507270821">"(વર્તમાન સેટિંગ)"</string>
<string name="zen_onboarding_dnd_visual_disturbances_header" msgid="7584229011611927613">"ખલેલ પાડશો નહીં નોટિફિકેશનની સેટિંગમાં ફેરફાર કરીએ?"</string>
- <string name="sound_work_settings" msgid="4140215240360927923">"કાર્યાલયની પ્રોફાઇલની ધ્વનિઓ"</string>
- <string name="work_use_personal_sounds_title" msgid="531727195073003599">"વ્યક્તિગત પ્રોફાઇલ ધ્વનિઓ વાપરો"</string>
- <string name="work_use_personal_sounds_summary" msgid="2886871383995187441">"કાર્ય અને વ્યક્તિગત પ્રોફાઇલો માટે ધ્વનિ સમાન રહે છે"</string>
- <string name="work_ringtone_title" msgid="5499360583947410224">"કાર્ય ફોન રિંગટોન"</string>
- <string name="work_notification_ringtone_title" msgid="8059159087214025757">"કાર્યાલયના નોટિફિકેશન માટે ડિફૉલ્ટ ધ્વનિ"</string>
- <string name="work_alarm_ringtone_title" msgid="5328487181385375130">"ડિફૉલ્ટ કાર્ય એલાર્મ માટે સાઉન્ડ"</string>
+ <string name="sound_work_settings" msgid="4140215240360927923">"ઑફિસની પ્રોફાઇલના સાઉન્ડ"</string>
+ <string name="work_use_personal_sounds_title" msgid="531727195073003599">"વ્યક્તિગત પ્રોફાઇલ સાઉન્ડ વાપરો"</string>
+ <string name="work_use_personal_sounds_summary" msgid="2886871383995187441">"ઑફિસ અને વ્યક્તિગત પ્રોફાઇલો માટે સાઉન્ડ સમાન રહે છે"</string>
+ <string name="work_ringtone_title" msgid="5499360583947410224">"ઑફિસ ફોન રિંગટોન"</string>
+ <string name="work_notification_ringtone_title" msgid="8059159087214025757">"ઑફિસના નોટિફિકેશન માટે ડિફૉલ્ટ સાઉન્ડ"</string>
+ <string name="work_alarm_ringtone_title" msgid="5328487181385375130">"ઑફિસના અલાર્મ માટે ડિફૉલ્ટ સાઉન્ડ"</string>
<string name="work_sound_same_as_personal" msgid="7728560881697159758">"વ્યક્તિગત પ્રોફાઇલની જેમ જ"</string>
<string name="work_sync_dialog_title" msgid="4799120971202956837">"ધ્વનિ બદલીએ?"</string>
<string name="work_sync_dialog_yes" msgid="2110726233746476066">"બદલો"</string>
@@ -3728,7 +3728,7 @@
<string name="decline_remote_bugreport_action" msgid="706319275774199033">"નકારો"</string>
<string name="usb_use_charging_only" msgid="2344625733377110164">"કોઈ ડેટા ટ્રાન્સફર નથી"</string>
<string name="usb_use_charging_only_desc" msgid="3283518562582478950">"બસ આ ઉપકરણને ચાર્જ કરો"</string>
- <string name="usb_use_power_only" msgid="6595783381323810697">"કનેક્ટ થયેલ ઉપકરણને ચાર્જ કરો"</string>
+ <string name="usb_use_power_only" msgid="6595783381323810697">"કનેક્ટ થયેલ ડિવાઇસને ચાર્જ કરો"</string>
<string name="usb_use_file_transfers" msgid="6153021302176151884">"ફાઇલ ટ્રાન્સફર"</string>
<string name="usb_use_file_transfers_desc" msgid="6953866660041189580">"ફાઇલોને બીજા ઉપકરણ પર ટ્રાન્સફર કરો"</string>
<string name="usb_use_photo_transfers" msgid="5974236250197451257">"PTP"</string>
@@ -4188,7 +4188,7 @@
<string name="enterprise_privacy_location_access" msgid="110406267468274216">"સ્થાન માટેની પરવાનગીઓ"</string>
<string name="enterprise_privacy_microphone_access" msgid="4586428105675460207">"માઇક્રોફોન માટેની પરવાનગીઓ"</string>
<string name="enterprise_privacy_camera_access" msgid="2366392786153103482">"કૅમેરા માટેની પરવાનગીઓ"</string>
- <string name="enterprise_privacy_enterprise_set_default_apps" msgid="6142937923758931242">"ડિફૉલ્ટ ઍપ્લિકેશનો"</string>
+ <string name="enterprise_privacy_enterprise_set_default_apps" msgid="6142937923758931242">"ડિફૉલ્ટ ઍપ"</string>
<plurals name="enterprise_privacy_number_packages" formatted="false" msgid="1480745164313890415">
<item quantity="one"><xliff:g id="COUNT_1">%d</xliff:g> ઍપ્લિકેશન</item>
<item quantity="other"><xliff:g id="COUNT_1">%d</xliff:g> ઍપ્લિકેશન</item>
diff --git a/tests/CarDeveloperOptions/res/values-hy/strings.xml b/tests/CarDeveloperOptions/res/values-hy/strings.xml
index 7c3b63f..335b65e 100644
--- a/tests/CarDeveloperOptions/res/values-hy/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-hy/strings.xml
@@ -1836,7 +1836,7 @@
<string name="enable_compatibility" msgid="1754177974320410195">"Աստիճանակարգել հավելվածները"</string>
<string name="unknown" msgid="2780743426415501227">"Անհայտ"</string>
<string name="sort_order_alpha" msgid="6689698854460261212">"Դասակարգել ըստ անունների"</string>
- <string name="sort_order_size" msgid="3167376197248713027">"Տեսակավորել ըստ չափի"</string>
+ <string name="sort_order_size" msgid="3167376197248713027">"Դասավորել ըստ չափի"</string>
<string name="sort_order_recent_notification" msgid="5592496977404445941">"Վերջինները"</string>
<string name="sort_order_frequent_notification" msgid="5640245013098010347">"Առավել հաճախ"</string>
<string name="show_running_services" msgid="1895994322704667543">"Ցույց տալ ընթացիկ ծառայությունները"</string>
@@ -3772,8 +3772,8 @@
<string name="memory_details" msgid="5165105904103664110">"Մանրամասներ"</string>
<string name="memory_use_summary" msgid="7676311343819965850">"Վերջին 3 ժամվա մեջ օգտագործվել է միջինը <xliff:g id="SIZE">%1$s</xliff:g> հիշողություն"</string>
<string name="no_memory_use_summary" msgid="3966550113388917978">"Վերջին 3 ժամվա մեջ հիշողություն չի օգտագործվել"</string>
- <string name="sort_avg_use" msgid="78428601253054298">"Տեսակավորել ըստ միջին օգտագործման"</string>
- <string name="sort_max_use" msgid="322772647893307413">"Տեսակավորել ըստ առավելագույն օգտագործման"</string>
+ <string name="sort_avg_use" msgid="78428601253054298">"Դասավորել ըստ միջին օգտագործման"</string>
+ <string name="sort_max_use" msgid="322772647893307413">"Դասավորել ըստ առավելագույն օգտագործման"</string>
<string name="memory_performance" msgid="3506743771947250453">"Արդյունավետություն"</string>
<string name="total_memory" msgid="7352192982476976453">"Ընդհանուր հիշողությունը"</string>
<string name="average_used" msgid="3022736210190754669">"Միջին օգագործում (%)"</string>
diff --git a/tests/CarDeveloperOptions/res/values-in/strings.xml b/tests/CarDeveloperOptions/res/values-in/strings.xml
index bd342ef..1a24f76 100644
--- a/tests/CarDeveloperOptions/res/values-in/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-in/strings.xml
@@ -490,7 +490,7 @@
<string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="1415709674142168770">"Pendaftaran tidak selesai"</string>
<string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="498951203761192366">"Waktu pendaftaran sidik jari habis. Coba lagi."</string>
<string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="7896295829530444810">"Pendaftaran sidik jari tidak berhasil. Coba lagi atau gunakan jari lain."</string>
- <string name="fingerprint_enroll_button_add" msgid="6335782936874996629">"Tambahkan yang lain"</string>
+ <string name="fingerprint_enroll_button_add" msgid="6335782936874996629">"Tambahkan lainnya"</string>
<string name="fingerprint_enroll_button_next" msgid="6419214079104413695">"Berikutnya"</string>
<string name="security_settings_fingerprint_enroll_disclaimer" msgid="5831834311961551423">"Selain membuka kunci ponsel, Anda juga dapat menggunakan sidik jari untuk mengotorisasi pembelian dan akses aplikasi. "<annotation id="url">"Pelajari lebih lanjut"</annotation></string>
<string name="security_settings_fingerprint_enroll_disclaimer_lockscreen_disabled" msgid="7954742554236652690">" Opsi layar kunci dinonaktifkan. Untuk mempelajari lebih lanjut, hubungi admin organisasi Anda. "<annotation id="admin_details">"Detail selengkapnya"</annotation>\n\n"Anda tetap dapat menggunakan sidik jari untuk mengotorisasi pembelian dan akses aplikasi. "<annotation id="url">"Pelajari lebih lanjut"</annotation></string>
diff --git a/tests/CarDeveloperOptions/res/values-ko/strings.xml b/tests/CarDeveloperOptions/res/values-ko/strings.xml
index 8d36e87..d842be6 100644
--- a/tests/CarDeveloperOptions/res/values-ko/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-ko/strings.xml
@@ -3282,7 +3282,7 @@
<string name="zen_onboarding_dnd_visual_disturbances_header" msgid="7584229011611927613">"방해 금지 모드의 알림 설정을 변경하시겠습니까?"</string>
<string name="sound_work_settings" msgid="4140215240360927923">"직장 프로필 사운드"</string>
<string name="work_use_personal_sounds_title" msgid="531727195073003599">"개인 프로필 사운드 사용"</string>
- <string name="work_use_personal_sounds_summary" msgid="2886871383995187441">"직장 프로필과 개인 프로필의 소리가 같습니다."</string>
+ <string name="work_use_personal_sounds_summary" msgid="2886871383995187441">"직장 프로필과 개인 프로필의 사운드가 같습니다."</string>
<string name="work_ringtone_title" msgid="5499360583947410224">"직장 휴대전화 벨소리"</string>
<string name="work_notification_ringtone_title" msgid="8059159087214025757">"기본 직장 알림 소리"</string>
<string name="work_alarm_ringtone_title" msgid="5328487181385375130">"기본 직장 알람 소리"</string>
diff --git a/tests/CarDeveloperOptions/res/values-ml/strings.xml b/tests/CarDeveloperOptions/res/values-ml/strings.xml
index 803c8b3..cada1a6 100644
--- a/tests/CarDeveloperOptions/res/values-ml/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-ml/strings.xml
@@ -3282,7 +3282,7 @@
<string name="zen_onboarding_dnd_visual_disturbances_header" msgid="7584229011611927613">"ശല്ല്യപ്പെടുത്തരുത് അറിയിപ്പ് ക്രമീകരണം മാറ്റണോ?"</string>
<string name="sound_work_settings" msgid="4140215240360927923">"ഔദ്യോഗിക പ്രൊഫൈൽ ശബ്ദങ്ങൾ"</string>
<string name="work_use_personal_sounds_title" msgid="531727195073003599">"സ്വകാര്യ പ്രൊഫൈൽ ശബ്ദങ്ങൾ ഉപയോഗിക്കുക"</string>
- <string name="work_use_personal_sounds_summary" msgid="2886871383995187441">"ഔദ്യോഗിക പ്രൊഫൈലുകൾക്കും വ്യക്തിഗത പ്രൊഫൈലുകൾക്കുമുള്ള ശബ്ദങ്ങൾ ഒന്നുതന്നെ ആയിരിക്കും"</string>
+ <string name="work_use_personal_sounds_summary" msgid="2886871383995187441">"ഔദ്യോഗിക പ്രൊഫൈലുകൾക്കും സ്വകാര്യ പ്രൊഫൈലുകൾക്കുമുള്ള ശബ്ദങ്ങൾ ഒന്നുതന്നെ ആയിരിക്കും"</string>
<string name="work_ringtone_title" msgid="5499360583947410224">"ഔദ്യോഗിക ഫോൺ റിംഗ്ടോൺ"</string>
<string name="work_notification_ringtone_title" msgid="8059159087214025757">"ഡിഫോൾട്ട് ഔദ്യോഗിക അറിയിപ്പ് ശബ്ദം"</string>
<string name="work_alarm_ringtone_title" msgid="5328487181385375130">"ഡിഫോൾട്ട് ഔദ്യോഗിക അലാറം ശബ്ദം"</string>
diff --git a/tests/CarDeveloperOptions/res/values-ne/strings.xml b/tests/CarDeveloperOptions/res/values-ne/strings.xml
index 9bcb19d..ddeafcb 100644
--- a/tests/CarDeveloperOptions/res/values-ne/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-ne/strings.xml
@@ -515,7 +515,7 @@
<string name="crypt_keeper_low_charge_text" msgid="1422879728632636311">"तपाईँको ब्याट्री चार्ज गरी पुनःप्रयास गर्नुहोस्।"</string>
<string name="crypt_keeper_unplugged_text" msgid="6597684068340036200">"तपाईंको चार्जरमा प्लग इन गरेर फेरि प्रयास गर्नुहोस्।"</string>
<string name="crypt_keeper_dialog_need_password_title" msgid="8532211509636340535">"कुनै लक स्क्रिन PIN वा पासवर्ड छैन"</string>
- <string name="crypt_keeper_dialog_need_password_message" msgid="1341590897367808702">"तपाईंले इन्क्रिप्सन सुरु गर्नु अघि लक स्क्रिन PIN वा पासवर्ड सेट गर्न आवश्यक छ।"</string>
+ <string name="crypt_keeper_dialog_need_password_message" msgid="1341590897367808702">"तपाईंले इन्क्रिप्सन सुरु गर्नुअघि लक स्क्रिन PIN वा पासवर्ड सेट गर्न आवश्यक छ।"</string>
<string name="crypt_keeper_confirm_title" msgid="8884417036062084547">"इन्क्रिप्ट गर्ने हो?"</string>
<string name="crypt_keeper_final_desc" product="tablet" msgid="2713708841024805586">"इन्क्रिप्सन कार्य उल्ट्याउन मिल्दैन र यदि तपाईँले अवरोध पुर्याउनु भयो भने तपाईँले डेटा गुमाउनु हुने छ। इन्क्रिप्सनले एक घन्टा वा बढी समय लिन सक्छ, यस समयमा ट्याब्लेट धेरै पटक पुनःस्टार्ट हुन सक्छ।"</string>
<string name="crypt_keeper_final_desc" product="default" msgid="2483549885938505746">"इन्क्रिप्सन अपरेसन उल्टाउन मिल्दैन र यदि तपाईँले यसलाई अवरूद्ध गर्नु भयो भने तपाईँले डेटा गुमाउनु हुने छ। इनक्रिप्सनलाई करिब एक घन्टा वा बढी लाग्छ जुन समय फोन धेरै चोटि पुनःस्टार्ट हुन सक्छ।"</string>
@@ -1157,7 +1157,7 @@
<string name="dock_audio_summary_unknown" msgid="1615958511030469507">"संलग्न डकको लागि सेटिङहरू"</string>
<string name="dock_not_found_title" msgid="2035088760477532435">"डक भेटिएन"</string>
<string name="dock_not_found_text" product="tablet" msgid="5996654431405111902">"डक अडियो सेट गर्न अघि तपाईँले ट्याब्लेट डक गर्नु पर्ने हुन्छ।"</string>
- <string name="dock_not_found_text" product="default" msgid="8275091896320216368">"तपाईंले डक अडियो सेटिङ गर्नु अघि फोन डक गर्नु आवश्यक पर्दछ।"</string>
+ <string name="dock_not_found_text" product="default" msgid="8275091896320216368">"तपाईंले डक अडियो सेटिङ गर्नुअघि फोन डक गर्नु आवश्यक पर्दछ।"</string>
<string name="dock_sounds_enable_title" msgid="3385931465312084061">"डक राख्ने आवाज"</string>
<string name="dock_sounds_enable_summary_on" product="tablet" msgid="4322104626905111669">"डकबाट ट्याब्लेट हटाउँदा वा राख्दा आवाज बजाउनुहोस्"</string>
<string name="dock_sounds_enable_summary_on" product="default" msgid="2751810717801098293">"फोन डकमा राख्दा वा झिक्दा आवाज बजाउनुहोस्"</string>
diff --git a/tests/CarDeveloperOptions/res/values-nl/strings.xml b/tests/CarDeveloperOptions/res/values-nl/strings.xml
index 6034129..cf12609 100644
--- a/tests/CarDeveloperOptions/res/values-nl/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-nl/strings.xml
@@ -198,7 +198,7 @@
<string name="proxy_port_label" msgid="8285157632538848509">"Proxy-poort"</string>
<string name="proxy_exclusionlist_label" msgid="8179084955547941904">"Proxy omzeilen voor"</string>
<string name="proxy_defaultView_text" msgid="5785775257042403261">"Standaardwaarden herstellen"</string>
- <string name="proxy_action_text" msgid="814511434843981413">"Gereed"</string>
+ <string name="proxy_action_text" msgid="814511434843981413">"Klaar"</string>
<string name="proxy_hostname_label" msgid="6798891831427287847">"Hostnaam van proxy"</string>
<string name="proxy_error" msgid="5036164133669802299">"Let op"</string>
<string name="proxy_error_dismiss" msgid="883805570485635650">"OK"</string>
@@ -293,7 +293,7 @@
<string name="okay" msgid="5838476766924989056">"OK"</string>
<string name="forget" msgid="7735525146062672874">"Vergeten"</string>
<string name="save" msgid="3418211178410498517">"Opslaan"</string>
- <string name="done" msgid="5143229467535372339">"Gereed"</string>
+ <string name="done" msgid="5143229467535372339">"Klaar"</string>
<string name="apply" msgid="951230399613164126">"Toepassen"</string>
<string name="share" msgid="3567029787293158575">"Delen"</string>
<string name="add" msgid="903114118076816060">"Toevoegen"</string>
@@ -415,7 +415,7 @@
<string name="security_settings_face_enroll_error_timeout_dialog_message" msgid="4917894418448325405">"Tijdlimiet voor gezichtsregistratie is bereikt. Probeer het opnieuw."</string>
<string name="security_settings_face_enroll_error_generic_dialog_message" msgid="5160473187142616862">"Gezichtsregistratie is mislukt"</string>
<string name="security_settings_face_enroll_finish_title" msgid="6800717857394410769">"Alles is ingesteld."</string>
- <string name="security_settings_face_enroll_done" msgid="5409739233373490971">"Gereed"</string>
+ <string name="security_settings_face_enroll_done" msgid="5409739233373490971">"Klaar"</string>
<string name="security_settings_face_settings_use_face_category" msgid="1586532139528115416">"Gezicht gebr. voor"</string>
<string name="security_settings_face_settings_use_face_unlock_phone" msgid="318274519126401671">"Apparaatontgrendeling"</string>
<string name="security_settings_face_settings_use_face_for_apps" msgid="5479369083370664351">"App-login en -betalingen"</string>
@@ -484,7 +484,7 @@
<string name="lock_screen_password_skip_title" msgid="3725788215672959827">"Instell. wachtwoord overslaan?"</string>
<string name="lock_screen_pattern_skip_title" msgid="4237030500353932005">"Instellen patroon overslaan?"</string>
<string name="security_settings_fingerprint_enroll_setup_screen_lock" msgid="9036983528330627756">"Schermvergrendeling instellen"</string>
- <string name="security_settings_fingerprint_enroll_done" msgid="4111289529758845926">"Gereed"</string>
+ <string name="security_settings_fingerprint_enroll_done" msgid="4111289529758845926">"Klaar"</string>
<string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="7410398793283818609">"Dat is niet de sensor"</string>
<string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7192100314788868883">"Raak de sensor achter op je telefoon aan. Gebruik je wijsvinger."</string>
<string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="1415709674142168770">"Registratie is niet voltooid"</string>
@@ -808,7 +808,7 @@
<string name="wifi_display_details" msgid="6379855523460749126">"Weergave-instellingen"</string>
<string name="wifi_display_options_title" msgid="4587264519668872213">"Opties voor draadloze weergave"</string>
<string name="wifi_display_options_forget" msgid="7882982544626742073">"Vergeten"</string>
- <string name="wifi_display_options_done" msgid="5922060890309265817">"Gereed"</string>
+ <string name="wifi_display_options_done" msgid="5922060890309265817">"Klaar"</string>
<string name="wifi_display_options_name" msgid="8477627781133827607">"Naam"</string>
<string name="wifi_band_24ghz" msgid="2973143764653628618">"2,4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6469832209748522207">"5 GHz"</string>
@@ -2455,7 +2455,7 @@
<string name="battery_saver_auto_percentage_summary" msgid="2036128588460338677">"Wordt ingeschakeld bij <xliff:g id="PERCENT">%1$s</xliff:g>"</string>
<string name="battery_saver_schedule_settings_title" msgid="574233428557678128">"Een planning instellen"</string>
<string name="battery_saver_sticky_title_new" msgid="5328707297110866082">"Uitschakelen wanneer volledig opgeladen"</string>
- <string name="battery_saver_sticky_description_new" product="default" msgid="3406582427270935879">"Batterijbesparing wordt uitgeschakeld wanneer je telefoon <xliff:g id="PERCENT">%1$s</xliff:g> batterijlading heeft"</string>
+ <string name="battery_saver_sticky_description_new" product="default" msgid="3406582427270935879">"Batterijbesparing wordt uitgeschakeld als je telefoon <xliff:g id="PERCENT">%1$s</xliff:g> batterijlading heeft"</string>
<string name="battery_saver_sticky_description_new" product="tablet" msgid="3284967694001857194">"Batterijbesparing wordt uitgeschakeld wanneer je tablet <xliff:g id="PERCENT">%1$s</xliff:g> batterijlading heeft"</string>
<string name="battery_saver_sticky_description_new" product="device" msgid="5056520668081504111">"Batterijbesparing wordt uitgeschakeld wanneer je apparaat <xliff:g id="PERCENT">%1$s</xliff:g> batterijlading heeft"</string>
<!-- no translation found for battery_saver_seekbar_title (7607123201469333645) -->
@@ -2829,7 +2829,7 @@
<string name="backup_pw_cancel_button_text" msgid="6170984655621611957">"Annuleren"</string>
<string name="additional_system_update_settings_list_item_title" msgid="8674710454802166341">"Aanvullende systeemupdates"</string>
<string name="ssl_ca_cert_warning" msgid="7794291734272626026">"Netwerk kan worden gemonitord"</string>
- <string name="done_button" msgid="7652373284597307008">"Gereed"</string>
+ <string name="done_button" msgid="7652373284597307008">"Klaar"</string>
<plurals name="ssl_ca_cert_dialog_title" formatted="false" msgid="7323708984446517980">
<item quantity="other">Certificaten vertrouwen of verwijderen</item>
<item quantity="one">Certificaat vertrouwen of verwijderen</item>
@@ -3428,7 +3428,7 @@
<string name="app_notification_row_banned" msgid="2079325338122151677">"Geblokkeerd"</string>
<string name="app_notification_row_priority" msgid="432299064888787236">"Prioriteit"</string>
<string name="app_notification_row_sensitive" msgid="4919671519227722958">"Gevoelig"</string>
- <string name="app_notifications_dialog_done" msgid="5395611029779655968">"Gereed"</string>
+ <string name="app_notifications_dialog_done" msgid="5395611029779655968">"Klaar"</string>
<string name="app_notification_importance_title" msgid="1902794400671001142">"Belang"</string>
<string name="notification_show_lights_title" msgid="5381920725933228542">"Knipperlicht"</string>
<string name="notification_vibrate_title" msgid="8221718258793835282">"Trillen"</string>
diff --git a/tests/CarDeveloperOptions/res/values-sv/strings.xml b/tests/CarDeveloperOptions/res/values-sv/strings.xml
index e17d281..d9b7a98 100644
--- a/tests/CarDeveloperOptions/res/values-sv/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-sv/strings.xml
@@ -1681,7 +1681,7 @@
<string name="location_access_summary" msgid="6919495149026354355">"Ge appar som har bett om tillstånd möjlighet att använda din platsinformation"</string>
<string name="location_sources_heading" msgid="8526658357120282741">"Platskällor"</string>
<string name="about_settings" product="tablet" msgid="4869626690708456341">"Om surfplattan"</string>
- <string name="about_settings" product="default" msgid="6019547763377294261">"Om mobilen"</string>
+ <string name="about_settings" product="default" msgid="6019547763377294261">"Om telefonen"</string>
<string name="about_settings" product="device" msgid="1770438316234693655">"Om enheten"</string>
<string name="about_settings" product="emulator" msgid="4497482494770487014">"Om emulerad enhet"</string>
<string name="about_settings_summary" msgid="4506081667462281647">"Visa juridisk information, status, programversion"</string>
@@ -4083,7 +4083,7 @@
<string name="sensors_off_quick_settings_title" msgid="3655699045300438902">"Sensorer är inaktiverade"</string>
<string name="managed_profile_settings_title" msgid="4340409321523532402">"Inställningar för jobbprofilen"</string>
<string name="managed_profile_contact_search_title" msgid="7337225196804457095">"Kontaktsökning"</string>
- <string name="managed_profile_contact_search_summary" msgid="7278267480246726951">"Tillåt att organisationen söker bland kontakter för att identifiera ringande och kontakter"</string>
+ <string name="managed_profile_contact_search_summary" msgid="7278267480246726951">"Tillåt att organisationen söker bland kontakter för att identifiera uppringare och kontakter"</string>
<string name="cross_profile_calendar_title" msgid="2351605904015067145">"Kalender för flera profiler"</string>
<string name="cross_profile_calendar_summary" msgid="3196258680438896098">"Visa jobbhändelser i den personliga kalendern"</string>
<string name="cross_profile_calendar_restricted_summary" msgid="6892589892357409107">"Organisationen tillåter inte åtkomst till jobbkalendern via personliga appar"</string>
diff --git a/tests/CarDeveloperOptions/res/values-uk/strings.xml b/tests/CarDeveloperOptions/res/values-uk/strings.xml
index 19a4068..b3dbb92 100644
--- a/tests/CarDeveloperOptions/res/values-uk/strings.xml
+++ b/tests/CarDeveloperOptions/res/values-uk/strings.xml
@@ -2084,7 +2084,7 @@
<string name="vision_settings_suggestion_title" msgid="7268661419110951128">"Змінити розмір шрифту"</string>
<string name="screen_reader_category_title" msgid="6300714148519645544">"Програми зчитування з екрана"</string>
<string name="audio_and_captions_category_title" msgid="6140472938769619212">"Аудіо й текст на екрані"</string>
- <string name="display_category_title" msgid="545168481672250195">"Дисплей"</string>
+ <string name="display_category_title" msgid="545168481672250195">"Екран"</string>
<string name="interaction_control_category_title" msgid="8775039211811947683">"Елементи керування взаємодією"</string>
<string name="user_installed_services_category_title" msgid="4288689493753221319">"Завантажені служби"</string>
<string name="experimental_category_title" msgid="3797000069740110717">"Експериментальні налаштування"</string>