跳到主要内容

翻译的回调(TranslatorResultObserver)

如果您使用的是 Unreal Engine,请参见 Unreal Engine SDK 的 TranslatorObserver

注册 Player Network SDK 翻译模块的回调,游戏需要注册回调函数进行处理。更多关于回调数据结构,请参见 BaseResult

注意

强烈建议游戏在应用启动函数中进行注册。

函数定义

// 增加回调
public static void AddTranslatorObserver(OnINTLResultHandler<INTLBaseResult> callback);
// 移除回调
public static void RemoveTranslatorObserver(OnINTLResultHandler<INTLBaseResult> callback);

代码示例

// 增加回调
public void AddTranslatorObserver()
{
INTLAPI.AddTranslatorResultObserver(OnTranslatorResultEvent);
}

// 移除回调
public void RemoveTranslatorObserver()
{
INTLAPI.RemoveTranslatorResultObserver(OnTranslatorResultEvent);
}

// 回调处理
private void OnTranslatorResultEvent(INTLTranslatorResult result)
{

if (result.MethodId == (int)INTLMethodID.INTL_TRANSLATOR_TRANSLATE)
{

// 处理翻译结果
// INTLTranslatorResult返回的TranslatorResp内容demo如下:
// 成功
{
"msg":"success",
"ret":0,
"seq":"11-0ce2f314-8771-4d97-955b-66f972dc0706-1723023056-7",
"translator_rsp":{
"debugInfo":null,
"message":"Success",
"result":[
{
"id":"c5b2802a287f58c9ce250f8c77fc6029",
"output":"xxxx",
"text":"xxxx"
}
],
"retCode":"0"
}
}
}
}