Merge 24Q3 (ab/11976889) to aosp-main-future

Bug: 347831320
Merged-In: I755d000d2fa39bac5b7ea480baf21d1bf8b5067b
Change-Id: Iab54cd11e8ac46c5304a51696200f179130e8081
tree: cf943714e2164ca6a7161b66dcea519b1376bae1
  1. proto/
  2. res/
  3. src/
  4. tests/
  5. tools/
  6. .gitignore
  7. Android.bp
  8. AndroidManifest.xml
  9. OWNERS
  10. PREUPLOAD.cfg
  11. readme.md
  12. TEST_MAPPING
readme.md

Car rotary service

Building

make CarRotaryController -j64

Enable/disable RotaryService

To enable, run:

adb shell settings put secure enabled_accessibility_services com.android.car.rotary/com.android.car.rotary.RotaryService

To disable, run:

adb shell settings delete secure enabled_accessibility_services

Inject events

Inject RotaryEvent

To rotate the controller counter-clockwise, run:

adb shell cmd car_service inject-rotary

For clockwise, run:

adb shell cmd car_service inject-rotary -c true

To rotate the controller multiple times (100 ms ago and 50 ms ago), run:

adb shell cmd car_service inject-rotary -dt 100 50

Inject KeyEvent

To nudge the controller up, run:

adb shell cmd car_service inject-key 280

Use KeyCode 280 for nudge up, 281 for nudge down,282 for nudge left,283 for nudge right.

To click the controller center button, run:

adb shell cmd car_service inject-key 23

To long click the controller center button, send down and up action seperately. For example:

adb shell cmd car_service inject-key 23 -a down && sleep 2 && adb shell cmd car_service inject-key 23 -a up