проблема в том, что Жест неправильно отправлен. Не все точки считываются.
Я пытался сделать смахивание прямоугольника. Если продолжительность длительная, она отправляется не идеально, но почти идеально.
Вот что я использую с https://codelabs.developers.google.com/codelabs/developing-android-a11y-service/#0
private void configureSwipeButton() {
Button swipeButton = (Button) mLayout.findViewById(R.id.swipe);
swipeButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
try {
Thread.sleep(1000);
GestureDescription.Builder gestureBuilder = new GestureDescription.Builder();
Path swipePath = new Path();
swipePath.moveTo(500, 500);
swipePath.lineTo(900, 500);
swipePath.lineTo(900, 900);
swipePath.lineTo(500, 900);
swipePath.lineTo(500, 500);
gestureBuilder.addStroke(new GestureDescription.StrokeDescription(swipePath, 0, 1500));
dispatchGesture(gestureBuilder.build(), null, null);
}
catch(Exception ex){
Toast.makeText(view.getContext(),ex.getMessage(),Toast.LENGTH_LONG).show();
}
}
});
}
Я пытался сделать это в приложении эскиза: https://play.google.com/store/apps/details?id=com.sonymobile.sketch&hl=en
Вот результат Длительности 1500:
https://prntscr.com/odq1cn
Вот результат Длительности 1000:
https://prntscr.com/odq2qj
Вот результат Длительности 500:
https://prntscr.com/odq2xs
Вот результат Длительности 100:
https://prntscr.com/odq3li