客户端App可以通过SDK向云端系统发送键盘、鼠标、手柄、触摸等外设事件。前后台的交互过程见链接。
客户端可以通过TcrSession#getKeyboard()
获取到Keyboard
对象, 从而向云端发送任何键盘按键的按下和抬起事件。
Windows键盘的KeyCode规范参考链接。
客户端可以通过TcrSession#getMouse()
获取到Mouse
对象, 从而向云端发送鼠标左右键的按下、抬起和移动事件,以及鼠标中键的滚轮事件。
如果云端应用支持手柄操作(例如手柄游戏),客户端可以通过TcrSession#getGamepad()
获取Gamepad
对象, 从而向云端发送手柄任意按键的按下和抬起事件。
为了触发云端手柄插入和断开事件,可以调用Gamepad#connectGamepad()
和Gamepad#disconnectGamepad()
方法。
无论云端是移动应用(Android系统)还是桌面应用(Windows系统), 都可以支持触摸屏操作。
当云端应用支持触摸屏操作时, 客户端可以通过TcrSession#getTouchScreen()
获取TouchScreen
, 从而向云端发送触摸事件。
如果您使用了SDK提供的TcrRenderView
视图进行渲染,那么我们还提供了该视图触摸事件的一些默认实现类,可以很方便地将客户端触摸事件转换为云端外设事件并发送给云端,例如将客户端触摸屏上的点击事件映射为云端鼠标的点击事件。适合大多数客户直接使用,不用做复杂的开发。
该类用于将渲染视图上触发的触摸事件自动转换为云端触摸屏的触摸事件,并发送到云端。
创建该对象实例,并且通过TcrRenderView#addSubView(MobileTouchView)
添加触摸视图,例如
[self.renderView addSubview:self.mobileTouchView];
通过PctouchView#setCursorTouchMode设置操作响应模式
- TCRMouseCursorTouchMode_AbsoluteTouch
单指短按: 用户在
TcrRenderView
按下时,向云端发送鼠标左键的按下事件,抬起时,向云端发送鼠标左键的抬起事件。 单指移动: 点击view上的点,映射到对应windows画面上的鼠标位置 - TCRMouseCursorTouchMode_RelativeTouch
单指长按: 用户在
TcrRenderView
按下时,向云端发送鼠标左键的按下事件,抬起时,向云端发送鼠标左键的抬起事件。 单指移动: 用户在PcTouchView
移动时,给云端发送鼠标移动事件。 - 双指操作: 用户在
TcrRenderView
上双指捏合时,可以缩放TcrRenderView
;双指平移时,可以拖动TcrRenderView
, 该操作不会给云端发送任何事件。
创建该对象实例,并且通过TcrRenderView#addSubView(PcTouchView)
添加触摸视图,例如
[self.renderView addSubview:self.pcTouchView];