Device: Nothing Phone (A059), Nothing OS 5 beta, Android 17 (SDK 37), build C5.0-260915-2123
What happens: The phone does a full reboot while an AccessibilityService is injecting touches via dispatchGesture(). Reproduced 3 times.
Trigger (suspected): A single GestureDescription with two strokes where one stroke ends at exactly the same time the other begins. For example:
Stroke A: point (x1, y1), startTime 0, duration 1500 ms
Stroke B: point (x2, y2), startTime 1500, duration 1500 ms
So a POINTER_UP and a new pointer DOWN happen at the same timestamp.
What does NOT trigger it:
Single-stroke gestures (14/14 OK)
Two strokes pressed simultaneously, or one stroke starting while the other is still held (8/8 OK)
Two strokes with a gap between them (A ends, B starts 500 ms later)
Workaround: Offsetting stroke B’s start by 60 ms from stroke A’s end avoids the reboot. (Bunu yeni build ile test ettikten sonra ekle.)
Steps to reproduce:
Enable any AccessibilityService with canPerformGestures=“true”.
Dispatch the gesture above while a fullscreen game (Unity) is in the foreground.
The device reboots at or during the handoff. Full bugreport available — I can share it privately with the Nothing team.