Merge Android 14 QPR3 to AOSP main

Bug: 346855327
Merged-In: Ia7316092c90271d1d8347dd49abbd2247d8fec20
Change-Id: I766a8309ccca8b7ebfa6022c39842a98bc1980be
tree: 66a3a90468932e2a1eed730794bd1ec814b4c96d
  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