2015-10-17 9 views
19

Некоторые компании предлагают ручное тестирование реальных iPhone/iPad-устройств. С помощью мыши и клавиатуры вы можете управлять устройством прямо из своего браузера.Управление устройством iOS с помощью мыши/клавиатуры

Возможно, они используют что-то вроде AirPlay для потоковой передачи графических изображений устройства в браузер. Но как они конвертируют щелчки мыши, чтобы прикоснуться к событиям на iPhone/iPad? Так как невозможно запустить VNC-сервер на устройстве, мне интересно, есть ли другой способ сделать это.

+0

Используют ли они настоящие устройства или могут ли имитаторы работать удаленно? Есть пример? –

+0

http://stackoverflow.com/questions/6742227/how-to-connect-wireless-mouse-with-iphone, http://apple.stackexchange.com/questions/203178/using-mouse-from-osx-host -on-ios-device так же, как и этот – Leena

+0

@BeauYoung они используют реальные устройства: perfectomobile.com - keynotedeviceanywhere.com – Jochen

ответ

0

Я не знаю точно, как работают эти службы, но я думаю, вы должны включить в них фреймворк из своего приложения. Эта структура может содержать небольшой серверный компонент, который получает события мыши и применяет их к приложению.

func applicationDidBecomeActive(application: UIApplication) { 
    MyRemoteControlFramework.startServer() 
} 

Если один нажатием кнопки мыши на место на экране, каркас может сначала выполнить HitTest, чтобы найти вид, который должен получить щелчок (см Hittest on UIView). Когда целевое представление будет найдено, структура может вызывать touchhesBegan, touchsMoved, touchesEnded, ... на этом представлении. Это небольшая работа, но я думаю, что это не сложно. Также экран можно легко захватить и отправить через серверный компонент (см. How to take a screenshot).

+0

. Предостережение этого решения заключается в том, что вам нужно добавить дополнительный код для поддержки входящих данных из фреймворка и обработать разбор. Похоже, что OP хочет VNC-подобное решение, которое не зависит от какого-либо конкретного приложения и взаимодействует с самим телефоном. (Но возможно ли это? Hmm) –

+1

Это, безусловно, невозможно контролировать весь телефон (без джейлбрейка или с рукой робота, касающейся экрана). Но если вы просто хотите удаленно управлять своим приложением, то я думаю, что это путь. – liefersfl

+0

Вы можете прикрепить аппаратное обеспечение к телефону (молниевому разъему), которое эмулирует касание, например, стилусом или клавиатурой и т. Д., Которое также будет работать. Это зависит от того, какой вариант использования. – liefersfl

Смежные вопросы