【发布时间】:2018-11-17 23:02:53
【问题描述】:
我想在“点击”时使用AccessibilityService 执行多次滑动。我已经尝试过了,但它不会执行多次滑动。任何帮助深表感谢。它正在工作,但只注册了一次滑动。
public void onAccessibilityEvent(AccessibilityEvent accessibilityEvent)
{
final int eventType= accessibilityEvent.getEventType();
switch (eventType)
{
case 1:
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N)
{
DisplayMetrics displayMetrics = getResources().getDisplayMetrics();
int middleYValue = displayMetrics.heightPixels / 2;
final int leftSideOfScreen = displayMetrics.widthPixels / 4;
final int rightSizeOfScreen = leftSideOfScreen * 3;
GestureDescription.Builder gestureBuilder = new GestureDescription.Builder();
Path path = new Path();
if (accessibilityEvent.getText() != null && accessibilityEvent.getText().toString().contains("1"))
{
path.moveTo(rightSizeOfScreen, middleYValue);
path.lineTo(leftSideOfScreen, middleYValue);
}
else
{
path.moveTo(leftSideOfScreen, middleYValue);
path.lineTo(rightSizeOfScreen, middleYValue);
}
gestureBuilder.addStroke(new GestureDescription.StrokeDescription(path, 100, 50));
gestureBuilder.addStroke(new GestureDescription.StrokeDescription(path, 100, 50));
for (int i=0;i<5;++i)
{
swipe(gestureBuilder.build());
}
}
}
}
【问题讨论】:
-
对不起,我没有足够的声誉来添加评论,所以我在这里建议你多次滑动使用多个处理程序。并且处理程序的时间(以毫秒为单位)应与滑动的持续时间相同。
标签: android accessibilityservice