鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

初始化并注册音频引擎和触控引擎接口

场景介绍

初始化注册音频和触控接口。

前提条件

指令流引擎对象已创建。

开发流程

  1. 创建DataPipe类实现TOUCHSENDHOOK和AUDIOSENDHOOK接口。
  2. 封装DataPipe的注册接口,分别注册触控引擎以及音频引擎。
  3. 在TOUCHSENDHOOK和AUDIOSENDHOOK接口实现中分别调用指令流的发送触控或者音频接口方法。

编码实例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
public class Activity implements BaseActivity {
    protected void onCreate(Bundle savedInstanceState) {
        // 设置指令流引擎对象
        DataPipe.setInstructionEngine(engine);
        // 注册触控引擎
        DataPipe.registerHookToTouch();
        // 注册音频引擎
        DataPipe.registerAudioSendHook();
   }
}

public class DataPipe extends BaseDataPipe implements TOUCHSENDHOOK, AUDIOSENDHOOK {
    // 注册触控引擎接口
    public static void registerHookToTouch() {
        // 调用触控引擎注册
        int ret = VmiTouch.getInstance().registerTouchSendHook(DataPipe.getInstance());
        if (ret == VmiTouch.VMI_SUCCESS) {
            // 注册触控引擎成功
        }
    }
    // 注册音频引擎接口
    public static void registerAudioSendHook() {
        // 调用音频引擎注册
        int ret = AudioTrackPlayer.getInstance().registerAudioSendHook(DataPipe.getInstance());
        if (ret == AudioTrackPlayer.VMI_SUCCESS) {
            // 注册音频引擎成功
        }
    }
    @Override
    public void touchSendData(byte[] data, int length) {
        // 调用指令流引擎触控发送接口
        instructionEngine.sendTouchEventArray(data, length);
    }
    @Override
    public void audioSendData(byte[] data, int length) {
        //  调用录音发送接口
        instructionEngine.sendAudioDataArray(data, length);
    }
}