无法使用AccessibilityService和DispatchGesture

问题描述

我决定创建一个可以自动执行屏幕触摸的应用程序,并将在需要自动化的其他设备上使用它。

我听说“'AccessibilityService'''使我不得不使用Android.Graphics.PathGestureDescriptionAccessibilityService。我找不到与AccessibilityService交流的方式,所以我决定创建一个继承自AccessibilityService的类,使我可以使用dispatchGesture函数,但实际上并没有使用此功能时不起作用。

这是我的代码和我的AndroidManifest文件

代码

public class dispatchGController : AccessibilityService
{

    public override void OnAccessibilityEvent(AccessibilityEvent e)
    {

    }

    public override void OnInterrupt()
    {
    }

    public override void OnCreate()
    {
        base.OnCreate();
        Core.WLDel("Service Created!");
    }

    protected override void OnServiceConnected()
    {
        base.OnServiceConnected();

        this.SetServiceInfo(new AccessibilityServiceInfo() { EventTypes = EventTypes.AllMask,FeedbackType = Android.AccessibilityServices.FeedbackFlags.Spoken,NotificationTimeout = 100 });
    }

    protected override bool OnGesture(int gestureId)
    {
        Core.WLDel(gestureId.ToString());
        return base.OnGesture(gestureId);
    }

    public dispatchGController()
    {
        var res = dispatchGesture(Core.TouchGestures.CreateClick(new Core.ACPointF(10,200)),Core.MainCallback,null);
    }
}

        public class TouchGestures
    {
        const int ClickDuration = 1;
        public static GestureDescription CreateClick(ACPointF Point)
        {
            Path clickPath = new Path();
            clickPath.Moveto(Point.X,Point.Y);
            GestureDescription.strokeDescription clickstroke = new GestureDescription.strokeDescription(clickPath,ClickDuration);
            GestureDescription.Builder builder = new GestureDescription.Builder();
            builder.Addstroke(clickstroke);
            return builder.Build();
        }
    }

这是我的清单文件Manifest 有什么建议吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)