iOS – Perfecto Mobile中的屏幕共享
我们正在探索各种testing套件进行移动自动化testing,并遇到了这家名为Perfecto Mobile的公司。 其中一个让我失望的function是他们能够(无越狱)有效地在物理iPad上执行“远程桌面”。
因此,iPad的屏幕在Web应用程序中被镜像,它可以在Web应用程序上注册触摸/滑动事件并在设备上执行它们。 我唯一相关的技术细节是,所有这些都是使用通过USB电缆发送的命令执行的。
我很好奇这是如何实现的,以及有关私有API的细节(如果有的话)。
谢谢,
Teja公司
我对PerfectoMobile并不熟悉,但是我可以给你几个关于如何完成的指示:
-
对于镜像来说,一种方法是使用AirPlay,这些API有很好的文档logging ,但是不要去做我们正在谈论的,这需要一些严肃的逆向工程,但是这绝对有可能, 这些人已经做到了 。 一种不同的方法是运行一个后台应用程序,它定期拍摄主屏幕的快照,并通过套接字连接发送给客户端。 您可以将其作为VNC服务器来执行此操作,并将远程视图合并到Web应用程序中,则可以使用noVNC 。 就使用USB连接而言,在后台应用程序通过TCP与客户端交谈的情况下,您可以转发端口。
-
要真正在设备上执行从远程查看器发送的触摸事件,大多数人一直使用GraphicsServices私有框架中的GSEvent组function,而不需要越狱设备。 同样,一个后台应用程序会通过一个套接字接收一个指令,如“点击”,实例化GSEvent,然后注入它,以便在最前面的应用程序的运行循环中进行处理。
至less这几个可能性已经在不同的iOS应用程序(iOS7是不同的动物)中成功实现了。 您不会在App Store中find任何这样的应用程序,因为Apple明确禁止在第三方应用程序中使用私有框架,而是使用企业和临时设置configuration文件在内部部署它们。 但是在Android上,Play商店中有VMLite可用。
如果你想从iOS / Android共享屏幕,看看skreen.me。 他们有示例应用程序,您可以尝试,也为移动应用程序集成提供库。
- UITabBarController中隐藏的UINavigationController
- iOS中的MVC方法
- 如何在基于Utility的iPhone应用程序的MainView.xib中添加可滚动/可缩放的图像
- replaceSwift 2.2中的C风格的循环
- 如何在Swift中启用WKWebView的位置服务?
- 如何在xcode(swift)和phonegap中将iPhone作为背景灯光运行
- iOS:推送通知,UIApplicationStateInactive和快速应用切换
- SOAP请求使用NSURLSession Objective C或SWIFT
- ACAccountStore错误6(ACErrorAccountNotFound)和8