
# 触控注入
#### 接口介绍
int InjectTouchData(const InputTouch \&inputTouch);
#### 功能描述
触控数据注入。
#### 输入参数
表1输入参数说明 
| 参数名称       | 说明                                                  |
|:---|:---|
| inputTouch | 触控注入参数结构体，详见[表2]。 |
   
 表2触控注入参数结构体说明 
| 参数名称           | 参数类型   | 说明                                                                                                        |
|:---|:---|:---|
| pointerID      | number | 真机触点编号，多指触控下会有多个触点，取值范围\[0,9\]，即最多支持10个触点。                                                                |
| orientation    | number | 真机屏幕旋转角度，默认为0，可设置为1(90°)，2(180°), 3(270°)。                                                                |
| action         | number | 真机触控行为，如ACTION_DOWN, ACTION_UP，取值范围请参考：<https://developer.android.com/reference/android/view/MotionEvent> |
| pressure       | number | 真机触控压力值，默认为129。                                                                                           |
| physicalWidth  | number | 真机屏幕分辨率宽，默认为0，取值范围\[0,2160\]。                                                                             |
| physicalHeight | number | 真机屏幕分辨率高，默认为0，取值范围\[0,4096\]。                                                                             |
| touchX         | number | 真机触点坐标，取值范围\[0,physicalWidth\]。                                                                           |
| touchY         | number | 真机触点坐标，取值范围\[0,physicalHeight\]。                                                                          |
| touchTime      | number | 真机触控时间与上一次ACTION_DOWN时间的偏移量。                                                                              |
   
![](https://support.huaweicloud.com/sdkreference-cph/public_sys-resources/note_3.0-zh-cn.png)
- 真机端触控事件的采集方式，详见端云协同的端侧SDK开源代码：[端云协同的端侧SDK](https://gitee.com/HuaweiCloudDeveloper/huaweicloud-cloudPhoneAccess-android/tree/master)。
- 真机端触控事件采集相关代码，请参考：[onTouch方法](https://gitee.com/HuaweiCloudDeveloper/huaweicloud-cloudPhoneAccess-android/blob/master/cloudphone/src/main/java/com/huawei/cloudphone/apiimpl/CloudPhoneImpl.java)。
 
#### 输出参数
无
#### 返回值
0：成功
小于0：数据注入失败
#### 错误码
请参见[错误码](https://support.huaweicloud.com/sdkreference-cph/cph_sdk_0016.html)。
#### 调用示例
```
// 触控数据结构体
struct InputTouch {
    uint8_t pointerID;       
    uint8_t orientation;     
    uint8_t action;         
    uint16_t pressure;       
    uint16_t touchX;        
    uint16_t touchY;        
    uint16_t physicalWidth;  
    uint16_t physicalHeight; 
    int32_t touchTime;       
    uint8_t reserved[16];    // 保留字段
};
InputTouch inputTouch;
inputTouch.pointerID = 0;
inputTouch.orientation = 0;
inputTouch.action = 0;        // ACTION_DOWN
inputTouch.pressure = 129;
inputTouch.physicalWidth = 720;
inputTouch.physicalHeight = 1280;
inputTouch.touchX = 52;
inputTouch.touchY = 157;
inputTouch.touchTime = 0;
int ret = InjectTouchData(inputTouch);
//注意
要确保数据类型是本地字节序，数据来自网络则需要使用ntohl()方法进行本地字节序转换
```
