2013-10-09 2 views
4

Мы изучали различные тестовые комплекты для мобильных автоматических испытаний и столкнулись с этой компанией под названием Perfecto Mobile. Одна из особенностей, которые отпугнули меня, заключалась в том, что они (без джейлбрейка) эффективно выполняют «удаленный рабочий стол» на физическом iPad.iOS - Совместное использование экрана в Perfecto Mobile

Итак, экран iPad отражен в веб-приложении, он может регистрировать события касания/прокрутки в веб-приложении и выполнять их на устройстве. Единственная соответствующая техническая информация, которую я имею, заключается в том, что все это выполняется с помощью команд, переданных по USB-кабелю.

Мне очень любопытно, как это реализовано, и подробно о соответствующих частных API, если таковые имеются.

Спасибо,
Тея

+0

Hi Tejaswi, Я ищу аналогичное решение. Совместное использование моих приложений для приложений iOS для настольного/веб-приложения. Ответ в вашем запросе помогает много проанализировать, но вам нужна важная помощь! Пожалуйста, проверьте мой запрос здесь -> http://stackoverflow.com/questions/20054509/ios-convert-ios-app-screen-as-network-packets, как я могу продолжить? Он предложил использовать VNC-сервер и использовать сокет-соединение для передачи данных. Где будет этот VNC-сервер, на рабочем столе? Вы знаете, как я могу передавать снимки экрана на сервер VNC, а затем перейти к noVNC? – Getsy

+0

Должно ли устройство и веб-приложение находиться в одной сети? –

ответ

4

Я не знаком с PerfectoMobile, но я могу дать вам несколько советов о том, как это может быть достигнуто:

  • Для зеркального отображения, один из способов будет посмотреть на использование AirPlay, APIs are pretty well documented, но не делать то, о чем мы говорим, что потребует серьезной обратной инженерии, но это определенно возможно, these guys have done it. Другой подход заключается в том, чтобы запустить фоновое приложение, которое будет периодически делать снимки основного экрана и отправлять их через соединение сокета с клиентом. Вы можете сделать это как сервер VNC и включить удаленный просмотр в веб-приложении, вы можете использовать noVNC. Если вы используете USB-соединение, в случае, если фоновое приложение разговаривает с клиентом через TCP, вы можете перейти на другой порт.

  • Чтобы на самом деле выполнить на устройстве события касания, отправленные с вашего удаленного наблюдателя, большинство людей используют группу функций GSEvent из частной инфраструктуры GraphicsServices без необходимости джейлбрейка устройства. Опять же, фоновое приложение получит по сокету такую ​​команду, как «Нажмите там», создайте экземпляр GSEvent и введите его, чтобы он обрабатывался в цикле выполнения самого фронтального приложения.

Эти возможности, по крайней мере, были успешно реализованы в разных приложениях iOS до iOS 6.1 (iOS7 - другое животное). Вы не найдете такого приложения в App Store, так как Apple явно запрещает использование частных фреймворков в сторонних приложениях, вместо этого люди развертывают их самостоятельно с использованием корпоративного профиля ad-hoc. На Android же есть VMLite, доступный в Play Маркете.

+0

Удивительно, спасибо. Им нужно заглядывать в них немного больше. –

+0

Привет, Франк, я ищу аналогичное решение. Ваш ответ помогает многое для дальнейшего анализа, но вам важна ваша помощь! Пожалуйста, проверьте мой запрос здесь, пожалуйста, помогите -> http://stackoverflow.com/questions/20054509/ios-convert-ios-app-screen-as-network-packets http: // stackoverflow.com/questions/20445732/screen-sharing-open-source-for-receive-screenshot-images http://stackoverflow.com/questions/20444284/ios-streaming-network-packets-pcap-usage – Getsy

+0

@Frank Я смотрю проблема для iOS 7 с использованием GSEvent. Но я прочитал некоторые блоги, которые говорят, что они относятся к IOHID. Но все же я не нахожу решение для отправки события с помощью IOHID. Поэтому, пожалуйста, помогите мне. – Developer

0

Если вы хотите поделиться экраном с ios/android, откройте skreen.me. У них есть примеры приложений, которые вы можете попробовать, а также они предоставляют библиотеки для интеграции мобильных приложений.

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