Есть ли способ, кроме использования GSEvent, для подделки сенсорных событий на устройствах iOS 7?

Мне нужно подделать сенсорные события на устройствах iOS 7. Я просмотрел некоторые доступные ресурсы, но не смог найти ничего, что говорило бы об iOS 7.

Ниже приведено то, что я намеревался достичь:
Фоновый код iOS, работающий на устройстве iOS 7, который будет прослушивать сокет, которому приложение на стороне клиента будет отправлять нажатия клавиш мыши, которые преобразуются в события касания/пролистывания и т. д.

Я прошел по этой ссылке http://blog.lazerwalker.com/blog/2013/10/16/faking-touch-events-on-ios-for-fun-and-profit, но и здесь сказал, что GSEvent будет молча терпеть неудачу в iOS 7.

Пожалуйста, дайте мне знать, если есть способ достичь этого.


person CK1984    schedule 12.11.2014    source источник


Ответы (1)


Ознакомьтесь с ControlFreak.
После добавления и импорта вы сможете выполнять касания

- (void)performTouchInView:(UIView *)view
{
    UITouch *touch = [[UITouch alloc] initInView:view];
    UIEvent *eventDown = [[UIEvent alloc] initWithTouch:touch];

    [touch.view touchesBegan:[eventDown allTouches] withEvent:eventDown];

    [touch setPhase:UITouchPhaseEnded];
    UIEvent *eventUp = [[UIEvent alloc] initWithTouch:touch];

    [touch.view touchesEnded:[eventUp allTouches] withEvent:eventUp];
}

Также вы можете указать точку для касания

UITouch *touch = [[UITouch alloc] initInView:view xcoord:100 ycoord:100];
person l0gg3r    schedule 12.11.2014
comment
как установить касание в конкретном CGPoint (x, y)? - person Dhekra Zaied; 12.11.2014
comment
так что вы также можете позвонить UITouch *touch = [[UITouch alloc] initInView:view xcoord:100 ycoord:100]; - person l0gg3r; 12.11.2014
comment
Но в этом случае мы должны изменить метод initinView в UItouchSynthesis ??Как мы можем это сделать?потому что я пробовал, и у меня не работает на ios7 - person Dhekra Zaied; 12.11.2014