帮助与文档 > 产品文档 > 自然语言翻译服务 > IOS_SDK文档 > 文本翻译
文本翻译

文本翻译 IOS SDK 简介

概述

(1) 概念解释

文本翻译:将一段源语言文本转换成目标语言文本,可根据语言参数的不同实现多国语音之间的互译

(2) 说明

Hi,您好,欢迎使用有道智云翻译iOS SDK。

如果您想快速体验服务,建议您前往 翻译体验中心 或者在体验中心右下侧找到小程序二维码,扫描进行体验。

本文档主要针对需要集成翻译服务iOS SDK的开发工程师,详细描述有道智云翻译服务能力及集成过程。

如果您有与我们商务合作的需求,可以通过以下方式联系我们:

商务邮箱: AIcloud_Business@corp.youdao.com

如果您对文档内容有任何疑问,可以通过以下几种方式联系我们:

客服QQ:1906538062

智云翻译技术交流QQ 1群: 652880659

智云翻译技术交流QQ 2群: 669384425

智云翻译技术交流QQ 3群: 807539209

智云翻译技术交流QQ 4群: 936752411

联系邮箱: zhiyun@corp.youdao.com

温馨提示: 本文档主要针对开发人员,接入测试前需要在后台创建iOS应用,并绑定翻译实例;如果您还没有,请按照新手指南 操作。 平台向每个账户赠送50元的体验金,供用户集成前测试所用,具体资费规则详见 文本翻译服务报价

功能介绍

有道翻译SDK是有道开放平台提供的云服务之一,是有道在线翻译接口的一种实现,同时,支持离线中英查词。有道翻译SDK支持中文和目标文字(日文、英文、韩文、法文、俄文、葡萄牙文、西班牙文、越南文、中文繁体、德文、阿拉伯文和印尼文)之间的互译。

兼容性

支持设备:运行了iOS 8.0及以上系统的 iOS 设备

翻译SDK集成指南

集成前提

开始集成SDK之前开发者需要登录 有道智云平台 ,创建应用获取应用ID(或者通过运营人员获取应用ID),以便使用翻译服务。

集成步骤

SDK包导入

翻译SDK由如下几个SDK组成,用户可根据需要组合使用:

文件 说明
FanYiSDK.h 头文件(必选)
libbase.a 翻译相关SDK基础库(必选)
libhanyucidianoffline.a 汉语词典翻译SDK(可选,使用汉语词典功能时使用)
libonline.a 在线翻译SDK(可选,包含英汉互译,以及小语种翻译,在线查询)
libwordoffline.a 离线查词SDK(可选,中英单词的离线查询)
libsencentenceoffline.a 离线句子SDK(可选,中英句子的离线查询)
libSpeechRecognition.a 短语音识别SDK(可选,15秒短语音识别功能)
libspeechtransonline.a 语音翻译SDK(可选,语音翻译功能)
libocrtrans.a 图片翻译SDK(可选,图片翻译功能)
libStreamASR.a 流式语音识别SDK(可选,流式语音识别功能)
libSpeechEvaluation.a 在线语音评测SDK(可选,在线语音评测功能)
fanyidemo SDK使用demo
StaticResource StaticResource文件夹下的文件用于离线查词和汉语词典翻译,如果不使用离线功能,不需要StaticResource文件。

文件目录如下图所示:

说明:无论使用何种功能,都需要加入 FanYiSDK.hlibbase.a ,和相应功能的SDK,各SDK可组合使用。

(1) 添加头文件和库文件:将 translateSDK 添加到工程中,包括 FanYiSDK.h 头文件、libbase.a文件和要导入功能对应的SDK包。可以直接将 translateSDK 文件夹拖动到工程中,也可以选择File “Add files to ‘Project Name’…”

(2) 设置工程 Other Linker Flags 为 -ObjC

(3) 若使用离线功能,修改工程中任意一个类后缀名为 .mm,参见 demo 中 ViewController.mm,Xcode 10.0之前的版本需要添加libstc++.6.0.9.tbd,Xcode 10.0及以上版本需要设置C++ Standard Library为libc++;若未使用离线功能可跳过此步骤;

(4) 在工程build Phases – Link Binary With Libraries中添加libFanYiSDK.a, AdSupport.framework, CoreTelephony.framework,WebKit.framework, SystemConfiguration, libz.tbd和libsqlite3.tbd。如下:

SDK初始化

说明:所有的查询都需要初始化appKey(应用ID),只执行初始化一次即可。 注:appKey即应用ID

//初始化appKey(应用ID)
YDTranslateInstance *yd = [YDTranslateInstance sharedInstance];
yd.appKey = @"your appkey";

功能集成

1.离线汉语词典查词功能

说明:请参考 demo 中 HanyucidianViewController 的使用

(1) 使用的库文件:头文件、libbase.a、libhanyucidianoffline.a,以及离线词库文件hh,离线词库可以下载或者放入工程中,开发者根据需求自行决定:若下载则需要提供下载url,先下载再初始化;若放入工程中则可提词库路径直接初始化。

(2) 构造查询器

offlinetranslate = [YDHanyucidianOfflineTranslate request];

(3) 初始化离线词库

-(void)offLineInit {
  // 执行此初始化方法之后,确保hh文件在指定路径中存在(hh文件可压缩成zip文件后供用户下载,客户端使用之前解压即可)
  if([offlinetranslate initOfflineWithPath:[XUtil getDownloadPath]]){
      [HUDUtil show:self.view text:@"离线查词初始化成功"];
  }else{
      [HUDUtil show:self.view text:@"离线查词初始化失败"];
  }
}

注意: initOffline 方法是 YDHanyucidianOfflineTranslate 的实例方法,当 YDHanyucidianOfflineTranslate 被重新初始化之后,若想使用离线查词,必须调用 initOffline 方法。

(4) 执行查词过程。

查询,返回两种情况,一种是成功,相关结果存储在 response 参数中,另外一种是失败,失败信息放在error中,可根据 错误代码 进行查询。整个查询是异步的,查询结果存在数组中。

[offlinetranslate lookup:textField.text WithCompletionHandler:^(YDHanyucidianOfflineTranslate *request, NSArray *transltes, NSError *error) {
      if (error) {
          NSString *des = [error.userInfo objectForKey:NSLocalizedDescriptionKey];
          NSLog(@"================> %ld%@", (long)error.code,des);

      }
      [self showTrans:transltes];
}];

2.在线查词和翻译功能(支持小语种)

说明:请参考demo中TranslatesViewController的使用

(1) 使用的库文件:头文件、libbase.a、libonline.a

(2) 构造查询器

translateRequest  = [YDTranslateRequest request];

(3) 设置查词所需要的附加信息

YDTranslateParameters *parameters = [YDTranslateParameters targeting];
parameters.source = @"youdaosw";
parameters.from = YDLanguageTypeChinese;
parameters.to = YDLanguageTypeEnglish;
translateRequest.translateParameters = parameters;

(4) 执行查词过程

查询,返回两种情况,一种是成功,相关结果存储在 response 参数中,另外一种是失败,失败信息放在error中,可根据 错误代码 进行查询。整个查询是异步的。

[translateRequest lookup:[_translate objectForKey:@"content"] WithCompletionHandler:^(YDTranslateRequest *request, YDTranslate *response, NSError *error) {
      if (error) {
          //查询失败
      } else {
         //查询成功
      }
}];

3.离线汉英单词互译功能

说明:请参考 demo 中 OfflineTranslatesViewController 的使用, StaticResource 中文件夹中包含离线查词的库。

(1) 使用的库文件:头文件、libbase.a、libwordoffline.a、以及离线词库,离线词库可以下载或者放入工程中,开发者根据需求自行决定:若下载则需要提供下载url,先下载再初始化;若放入工程中则可提词库路径直接初始化。

(2) 构造查询器

offlinetranslate  = [YDWordOfflineTranslate request];

(3) 初始化离线词库

离线查词包含2个库,dicta 和 dictb,区别是 dicta 词库包含的词比较多,文件较大,dictb 只包含常见词汇。开发者可根据实际情况,选择一个词库使用即可。下面以 dictb 词库为例,介绍如何使用离线查词功能。

使用离线查询功能, 涉及到4个包,ba160111.ydd,bb160111,dictWithSeg.dat,yddict.dat.其中 dictWithSeg.dat 和 yddict.idx 文件必须导入到工程中,并且已经添加到 Copy bundle Resource 中。如下:

ba160111.ydd 和 bb160111 支持两种路径。开发者可指定词库的位置,也可以打到安装包中,分别调用不同的初始化方法即可。

//可选方式一、指定离线词库(ba160111.ydd和bb160111.ydd文件的)路径。注意,调用前提是该位置下已经包含这两个文件,否则初始化失败。
[offlinetranslate initOfflineWithPath:[XUtil getDownloadPath]];//布尔型返回值,代表初始化成功或者失败

//可选方式二、离线词库在安装包中(需要将这2个文件导入到工程中,确保Copy bundle Resource中能找到这2个文件)
[offlinetranslate initOffline]; //布尔型返回值,代表初始化成功或者失败

注意:initOffline方法是YDWordOfflineTranslate的实例方法,当YDWordOfflineTranslate被重新初始化之后,若想使用离线查词,必须调用initOffline方法。

(4) 执行查词过程

查询,返回两种情况,一种是成功,相关结果存储在 response 参数中,另外一种是失败,失败信息放在error中,可根据 错误代码 进行查询。整个查询是异步的。

[offlinetranslate lookup:[_translate objectForKey:@"content"] WithCompletionHandler:^(YDWordOfflineTranslate *request, YDTranslate *translte, NSError *error) {
     if (error) {
        //查询失败
    } else {
       //查询成功
    }
}];

4.离线汉英句子互译功能

说明:请参考 demo 中 SentenceOfflineTranslateViewController 的使用

(1) 使用的库文件:头文件、libbase.a、libsencentenceoffline.a,以及离线词库文件ce.zip,离线词库可以下载或者放入工程中,开发者根据需求自行决定:若下载则需要提供下载url,先下载再初始化;若放入工程中则可提词库路径直接初始化。

(2) 构造查询器

offlinetranslate  = [YDSentenceOfflineTranslate request];

(3) 初始化离线词库

-(void)offLineInit{
   //初始化之前先下载离线词库文件ce.zip(参见demo),每次查询均要先初始化离线翻译句子词库
   if([offlinetranslate initOfflineSenWithPath:[XUtil getDownloadPath]]){
       [HUDUtil show:self.view text:@"离线句子初始化成功"];
   }else{
       [HUDUtil show:self.view text:@"离线句子初始化失败"];
   }
}

注意: offLineInit 方法是 YDSentenceOfflineTranslate 的实例方法,当 YDSentenceOfflineTranslate 被重新初始化之后,若想使用离线查词,必须调用 offLineInit 方法。

(4) 执行查词过程。

查询,返回两种情况,一种是成功,相关结果存储在 response 参数中,另外一种是失败,失败信息放在error中,可根据 错误代码 进行查询。整个查询是异步的,查询结果存在数组中。

[offlinetranslate lookup:[_translate objectForKey:@"content"] WithCompletionHandler:^(YDSentenceOfflineTranslate *request, YDTranslate *translte, NSError *error) {
       if (error) {
           //查询失败
       } else {
           //查询成功
       }
}];

5.deeplink 跳转

说明:请参考 demo 中 DetailWordsViewController 的使用

点击查看更多,将进行deeplink跳转,若安装有道词典,则跳转到有道词典app里并显示所查单词的解释,若未安装有道词典,则跳转到Safari浏览器web界面并显示所查单词的解释;

- (void)toDict{
   //    //跳转到词典
   [_translate.ydTranslate openMore];
}

若在汉语词典界面点击查看更多,也会进行deeplink跳转;

- (void)toDict{
   //跳转到词典
   if (self.transltes.count) {
       YDChDictTranslate *translate = [self.transltes objectAtIndex:0];
       [translate openMore];
   }
}

6.在线语音翻译功能

说明:请参考 demo 中 SpeechOnlineViewController 的使用

(1) 使用的库文件:头文件、libbase.a、libspeechtransonline.a;

(2) 构造查询器

YDSpeechOnlineRequest *request = [YDSpeechOnlineRequest request];

(3) 设置查词所需要的附加信息

YDSpeechOnlineParam *param = [YDSpeechOnlineParam param];
param.from = @"en";//源语言
param.to = @"zh-CHS";//翻译目标语言
param.rate = @"16000";//采样率
param.channel = @"1";//声道数,目前只支持单声道,请写固定值1
param.voice = @"0";  //女声代码为0,男声代码为1,英语有四种:0 美式女声  1 美式男声   2 英式女声  3 英式男声
request.param = param;

(4) 执行语音翻译过程

查询输入为语音base64编码,返回两种情况,一种是成功,相关结果存储在 info 参数中,另外一种是失败,失败信息放在error中,可根据 错误代码 进行查询。

[request lookup:base64Str WithCompletionHandler:^(YDSpeechOnlineRequest *request, NSDictionary *info, NSError *error) {
  if (error) {
    //查询失败
  } else {
    //查询成功
    YDSpeechResult *result = [YDSpeechResult mj_objectWithKeyValues:info];
    [self showResult:result];
  }
}];

7.在线短语音识别功能

说明:支持最长15秒的短语音在线识别功能,请参考 demo 中 SpeechRecognitionViewController 的使用;

(1) 使用的库文件:头文件、libbase.a、libSpeechRecognition.a;

(2) 构造查询器

YDSpeechRecognitionRequest *request = [YDSpeechRecognitionRequest request];

(3) 设置语音识别所需要的附加信息

YDSpeechRecognitionParam *param = [YDSpeechRecognitionParam param];
param.langType = @"zh-CHS";//源语言
param.rate = @"8000";//采样率
param.channel = @"1";//声道数,目前只支持单声道,请写固定值1
request.param = param;

(4) 执行语音识别过程

查询输入为语音base64编码,返回两种情况,一种是成功,相关结果存储在 info 参数中,另外一种是失败,失败信息放在error中,可根据 错误代码 进行查询。

[request lookup:base64Str WithCompletionHandler:^(YDSpeechRecognitionRequest *request, NSDictionary *info, NSError *error) {
  if (!error) {
      YDSpeechRecognitionResult *result = [YDSpeechRecognitionResult initWithDict:info];
      [self showResult:result];
  }
}];

8.在线图片翻译功能

说明:请参考 demo 中 OCRTransController 的使用

(1) 使用的库文件:头文件、libbase.a、libocrtrans.a;

(2) 构造查询器

YDOCRTransRequest *request = [YDOCRTransRequest request];

(3) 设置查词所需要的附加信息

YDOCRTransParameter *param = [YDOCRTransParameter param];
param.from = @"en"; //设置源语言
param.to = @"zh-CHS"; //设置目标语言
request.param = param;

(4) 执行图片翻译过程

查询输入为图片base64编码,返回两种情况,一种是成功,相关结果存储在 info 参数中,另外一种是失败,失败信息放在error中,可根据 错误代码 进行查询。

[request lookup:base64Str WithCompletionHandler:^(YDOCRTransRequest *request, NSDictionary *info, NSError *error) {
  if (error) {
    //查询失败
  } else {
    //查询成功
    YDOCRTransResult *result = [YDOCRTransResult mj_objectWithKeyValues:info];
    [self showResult:result];
  }
}];

9.流式语音识别功能

说明:支持实时流式语音识别,目前支持中英文,请参考 demo 中 StreamASRController 的使用

(1) 使用的库文件:头文件、libbase.a、libStreamASR.a;

(2) 构造识别器

YDSpeechRecognizer *recognizer = [YDSpeechRecognizer sharedRecognizer];
recognizer.delegate = self;

(3) 设置识别所需要的附加信息

YDSpeechRecognizerParam *param = [YDSpeechRecognizerParam param];
param.langType = @"zh-CHS";//源语言
param.rate = @"16000";//采样率
param.format = @"wav";//语音文件格式
param.vadBOS = 2000;//前端点静音检测时长,ms
param.vadEOS = 2000;//后端点静音检测时长,ms
recognizer.param = param;

(4) 执行语音识别过程

执行[self.recognizer startListening];开始流式语音识别,结果将在代理方法中回调给开发者;

#pragma mark - speech recognizer delegate
- (void)onBeginOfSpeech {
    [self startSpeakingAnimation];
    NSLog(@"------speech start-----");
}

- (void)onEndOfSpeech {
    [self endSpekingAnimation];
    NSLog(@"------speech end-----");
}

- (void)onResults:(NSDictionary *)result isLast:(BOOL)isLast {
    NSString *sentence = result[@"sentence"];
    self.recognizedLabel.text = [NSString stringWithFormat:@"%@%@", self.displayingText, sentence];
    if (isLast) {
        [self.displayingText appendString:sentence];
    }
}

- (void)onCompleted:(NSError *)speechError {
    [self endSpekingAnimation];
    NSLog(@"------speech completed-----");
}

- (void)onConstantlyQuietIsBOS:(BOOL)isBOS {
    NSLog(@"检测到%@静音", isBOS ? @"前端点" : @"后端点");
}

10.在线语音评测功能

说明:支持在线语音评测,目前只支持英语评测,请参考 demo 中 SpeechEvaluationController 的使用

(1) 使用的库文件:头文件、libbase.a、libSpeechEvaluation.a;

(2) 构造识别器

YDSpeechEvaluationRequest *request = [YDSpeechEvaluationRequest request];

(3) 设置识别所需要的附加信息

YDSpeechEvaluationParam *param = [YDSpeechEvaluationParam param];
param.langType = @"en";//目前只支持英语评测
param.rate = @"16000";//采样率
param.channel = @"1";//声道数,目前只支持单声道,请写固定值1
request.param = param;

(4) 执行语音识别过程

查询输入为语音录音文件base64的字符串,返回结果回调在block中,若成功返回则info包含了返回的所有json数据,开发者可自定义model对返回的info数据进行解析;

[request lookup:base64Str text:refText completionHandler:^(YDSpeechEvaluationRequest *request, NSDictionary *info, NSError *error) {
    if (!error) {
        NSLog(@"%@", info);
        YDSpeechEvaluationResult *result = [YDSpeechEvaluationResult mj_objectWithKeyValues:info];
        [self showResult:result];
    }
}];

支持语言

(1) 支持语言列表

语言 代码
中文 zh-CHS
英文 en
日文 ja
韩文 ko
法文 fr
西班牙文 es
葡萄牙文 pt
意大利文 it
俄文 ru
越南文 vi
德文 de
阿拉伯文 ar
印尼文 id
南非荷兰语 af
波斯尼亚语 bs
保加利亚语 bg
粤语 yue
加泰隆语 ca
克罗地亚语 hr
捷克语 cs
丹麦语 da
荷兰语 nl
爱沙尼亚语 et
斐济语 fj
芬兰语 fi
希腊语 el
海地克里奥尔语 ht
希伯来语 he
印地语 hi
白苗语 mww
匈牙利语 hu
斯瓦希里语 sw
克林贡语 tlh
拉脱维亚语 lv
立陶宛语 lt
马来语 ms
马耳他语 mt
挪威语 no
波斯语 fa
波兰语 pl
克雷塔罗奥托米语 otq
罗马尼亚语 ro
塞尔维亚语(西里尔文) sr-Cyrl
塞尔维亚语(拉丁文) sr-Latn
斯洛伐克语 sk
斯洛文尼亚语 sl
瑞典语 sv
塔希提语 ty
泰语 th
汤加语 to
土耳其语 tr
乌克兰语 uk
乌尔都语 ur
威尔士语 cy
尤卡坦玛雅语 yua
阿尔巴尼亚语 sq
阿姆哈拉语 am
亚美尼亚语 hy
阿塞拜疆语 az
孟加拉语 bn
巴斯克语 eu
白俄罗斯语 be
宿务语 ceb
科西嘉语 co
世界语 eo
菲律宾语 tl
弗里西语 fy
加利西亚语 gl
格鲁吉亚语 ka
古吉拉特语 gu
豪萨语 ha
夏威夷语 haw
冰岛语 is
伊博语 ig
爱尔兰语 ga
爪哇语 jw
卡纳达语 kn
哈萨克语 kk
高棉语 km
库尔德语 ku
柯尔克孜语 ky
老挝语 lo
拉丁语 la
卢森堡语 lb
马其顿语 mk
马尔加什语 mg
马拉雅拉姆语 ml
毛利语 mi
马拉地语 mr
蒙古语 mn
缅甸语 my
尼泊尔语 ne
齐切瓦语 ny
普什图语 ps
旁遮普语 pa
萨摩亚语 sm
苏格兰盖尔语 gd
塞索托语 st
修纳语 sn
信德语 sd
僧伽罗语 si
索马里语 so
巽他语 su
塔吉克语 tg
泰米尔语 ta
泰卢固语 te
乌兹别克语 uz
南非科萨语 xh
意第绪语 yi
约鲁巴语 yo
南非祖鲁语 zu
自动识别 auto

其中auto可以识别中文、英文、日文、韩文、法文、西班牙文、葡萄牙文、俄文、越南文、德文、阿拉伯文、印尼文、意大利文,其他语种无法识别,为提高准确率,请指定语种。其中粤语作为from时,某些小语种不能翻译。

错误代码列表

错误码 含义
101 缺少必填的参数
102 不支持的语言类型
103 翻译文本过长
104 不支持的API类型
105 不支持的签名类型
106 不支持的响应类型
107 不支持的传输加密类型
108 应用ID无效,注册账号,登录后台创建应用和实例并完成绑定,可获得应用ID和应用密钥等信息
109 batchLog格式不正确
110 无相关服务的有效实例
111 开发者账号无效
113 q不能为空
114 不支持的图片传输方式
201 解密失败,可能为DES,BASE64,URLDecode的错误
202 签名检验失败
203 访问IP地址不在可访问IP列表
205 请求的接口与应用的平台类型不一致,如有疑问请参考入门指南
206 因为时间戳无效导致签名校验失败
207 重放请求
301 辞典查询失败
302 翻译查询失败
303 服务端的其它异常
304 会话闲置太久超时
401 账户已经欠费停
402 offlinesdk不可用
411 访问频率受限,请稍后访问
412 长请求过于频繁,请稍后访问
1001 无效的OCR类型
1002 不支持的OCR image类型
1003 不支持的OCR Language类型
1004 识别图片过大
1201 图片base64解密失败
1301 OCR段落识别失败
1411 访问频率受限
1412 超过最大识别字节数
2003 不支持的语音声道
2004 不支持的语音上传类型
2005 不支持的语言类型
2006 不支持的识别类型
2201 识别音频文件过大
2301 识别音频时长过长
2411 不支持的音频文件类型
2412 不支持的发音类型
3001 不支持的语音格式
3002 不支持的语音采样率
3003 不支持的语音声道
3004 不支持的语音上传类型
3005 不支持的语言类型
3006 不支持的识别类型
3007 识别音频文件过大
3008 识别音频时长过长
3009 不支持的音频文件类型
3010 不支持的发音类型
3201 解密失败
3301 语音识别失败
3302 语音翻译失败
3303 服务的异常
3411 访问频率受限,请稍后访问
3412 超过最大请求字符数
4001 不支持的语音识别格式
4002 不支持的语音识别采样率
4003 不支持的语音识别声道
4004 不支持的语音上传类型
4005 不支持的语言类型
4006 识别音频文件过大
4007 识别音频时长过长
4201 解密失败
4301 语音识别失败
4303 服务的异常
4411 访问频率受限,请稍后访问
4412 超过最大请求时长
5001 无效的OCR类型
5002 不支持的OCR image类型
5003 不支持的语言类型
5004 识别图片过大
5005 不支持的图片类型
5006 文件为空
5201 解密错误,图片base64解密失败
5301 OCR段落识别失败
5411 访问频率受限
5412 超过最大识别流量
9001 不支持的语音格式
9002 不支持的语音采样率
9003 不支持的语音声道
9004 不支持的语音上传类型
9005 不支持的语音识别 Language类型
9301 ASR识别失败
9303 服务器内部错误
9411 访问频率受限(超过最大调用次数)
9412 超过最大处理语音长度
10001 无效的OCR类型
10002 不支持的OCR image类型
10004 识别图片过大
10201 图片base64解密失败
10301 OCR段落识别失败
10411 访问频率受限
10412 超过最大识别流量
11001 不支持的语音识别格式
11002 不支持的语音识别采样率
11003 不支持的语音识别声道
11004 不支持的语音上传类型
11005 不支持的语言类型
11006 识别音频文件过大
11007 识别音频时长过长,最大支持30s
11201 解密失败
11301 语音识别失败
11303 服务的异常
11411 访问频率受限,请稍后访问
11412 超过最大请求时长
12001 图片尺寸过大
12002 图片base64解密失败
12003 引擎服务器返回错误
12004 图片为空
12005 不支持的识别图片类型
12006 图片无匹配结果
13001 不支持的角度类型
13002 不支持的文件类型
13003 表格识别图片过大
13004 文件为空
13301 表格识别失败
15001 需要图片
15002 图片过大(1M)
15003 服务调用失败
17001 需要图片
17002 图片过大(1M)
17003 识别类型未找到
17004 不支持的识别类型
17005 服务调用失败
-1000 未知错误
-2000 查询输入为空

常见问题及注意事项

1.翻译没结果? 检查下翻译接口回调的错误信息,保证申请的应用ID是有效且提前绑定了。

2.离线查询无效? 确保离线库正确放置,离线初始化成功。

3.添加翻译 SDK 之后审核没有通过? 翻译 SDK 使用了 AdSupport 框架获取设备 IDFA 信息用以统计计费,提交审核时对应用是否有广告选项请选择“是”。

版本更新记录

上线日期 版本号 更新内容
2017.05.08 v1.0.0 有道智云翻译 iOS SDK上线,支持在线离线翻译
2017.06.07 v1.1.0 1. 拆分翻译 SDK,SDK 拆分为多个文件,用户可根据需要引用
2. 修复已知 bug
2017.06.30 v1.2.0 修复已知 bug
2017.07.24 v1.3.0 修复 deeplink 相关 bug
2017.08.16 v1.4.0 修复已知 bug
2018.02.09 v1.5.0 支持在线语音翻译功能
2018.04.10 v1.6.0 在线文本翻译增加越南文
2018.05.15 v1.7.0 增加图片翻译功能
2018.10.10 v1.8.0 在线文本翻译增加德文,阿拉伯文和印尼文
2018.11.02 v1.9.0 增加流式语音识别,支持中英文
2018.11.16 v1.10.0 增加语音评测,支持英文