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

Initialize

函数功能

初始化指令流客户端引擎。指令流引擎会初始化EmuGLRender组件、网络通信组件。

约束说明

NA

函数原型

uint32_t Initialize(OnVmiEngineEvent event)

参数说明

字段名称

输入/输出

字段类型

字段描述

event

输入

OnVmiEngineEvent

OnVmiEngineEvent指令流引擎事件回调函数指针。原型如下:

using OnVmiEngineEvent = void (*)(EngineEvent event);

EngineEvent为指令流引擎事件,原型如下:

typedef struct EngineEvent {

int event = 0;

int para1 = 0;

int para2 = 0;

int para3 = 0;

int para4 = 0;

char additionInfo[4096] = {0};

} EngineEvent;

event代表引擎事件码,取值范围如下:

enum VmiEngineEvent {

VMI_ENGINE_EVENT_SOCK_DISCONN = -2, // 连接断开

VMI_ENGINE_EVENT_PKG_BROKEN = -3, // 数据包损坏

VMI_ENGINE_EVENT_VERSION_ERROR = -4, // 服务端和客户端的版本不匹配

VMI_ENGINE_EVENT_READY = -5, // 引擎渲染第一帧画面成功

VMI_ENGINE_EVENT_ORIENTATION_CHANGED = -6, // 服务端方向转屏事件

VMI_ENGINE_EVENT_CACHE_OVERFLOW = -7, // 缓存溢出

VMI_ENGINE_EVENT_BAD_LATENCY = -8, // 网络时延过大

VMI_ENGINE_EVENT_NEW_CONNECTION = -9, // 收到新的网络连接

VMI_ENGINE_EVENT_TRAFFIC_ABNORMAL = -10, // 网络流量异常

VMI_ENGINE_EVENT_APP_TRAFFIC_ABNORMAL = -11,// app发往Sipc的流量异常

VMI_ENGINE_EVENT_GET_VERSION_TIMEOUT = -12, // 获取版本号超时

VMI_ENGINE_EVENT_VERSION_MISMATCH = -13, // 版本号校验失败

VMI_ENGINE_EVENT_ENGINE_MISMATCH = -14, // 引擎匹配失败

};

当event值为VMI_ENGINE_EVENT_ORIENTATION_CHANGED时,para1代表转屏方向,取值范围如下:

  • 0,表示竖屏
  • 1,表示顺时针90度横屏
  • 2,表示顺时针180度竖屏
  • 3,表示顺时针270度横屏

返回值说明

数据类型:uint32_t

取值如下:

  • VMI_SUCCESS:表示初始化成功。
  • VMI_CLIENT_EXEC_ORDER_FAIL:表示引擎执行顺序非法。
  • VMI_CLIENT_INITIALIZE_FAIL:表示指令流客户端引擎初始化失败。

调用示例

void CallJavaOnVmiEngineEvent(EngineEvent event)
{
}
void Test()  
{ 
     uint32 initResult = Initialize(CallJavaOnVmiEngineEvent);  
     if (initResult != VMI_SUCCESS) {  
         // 初始化指令流引擎失败,显示错误信息,退出界面  
         ...  
         Log.e(TAG, "InstructionEngine initialize failed, result:" + initResult);  
     } else {  
         // 成功  
         ...  
     }
}