文本翻譯 IOS SDK 簡(jiǎn)介
概述
(1) 概念解釋
文本翻譯:將一段源語言文本轉(zhuǎn)換成目標(biāo)語言文本,可根據(jù)語言參數(shù)的不同實(shí)現(xiàn)多國(guó)語音之間的互譯
(2) 說明
Hi,您好,歡迎使用有道智云翻譯iOS SDK。
如果您想快速體驗(yàn)服務(wù),建議您前往 翻譯體驗(yàn)中心 或者在體驗(yàn)中心右下側(cè)找到小程序二維碼,掃描進(jìn)行體驗(yàn)。
本文檔主要針對(duì)需要集成翻譯服務(wù)iOS SDK的開發(fā)工程師,詳細(xì)描述有道智云翻譯服務(wù)能力及集成過程。
如果您有與我們商務(wù)合作的需求,可以通過以下方式聯(lián)系我們:
商務(wù)郵箱: AIcloud_Business@corp.youdao.com
如果您對(duì)文檔內(nèi)容有任何疑問,可以通過以下幾種方式聯(lián)系我們:
客服QQ:1906538062
智云翻譯技術(shù)交流QQ 1群: 652880659
智云翻譯技術(shù)交流QQ 2群: 669384425
智云翻譯技術(shù)交流QQ 3群: 807539209
智云翻譯技術(shù)交流QQ 4群: 936752411
聯(lián)系郵箱: zhiyun@corp.youdao.com
溫馨提示:
本文檔主要針對(duì)開發(fā)人員,接入測(cè)試前需要在后臺(tái)創(chuàng)建iOS應(yīng)用,并綁定翻譯實(shí)例;如果您還沒有,請(qǐng)按照新手指南 操作。
平臺(tái)向每個(gè)賬戶贈(zèng)送50元的體驗(yàn)金,供用戶集成前測(cè)試所用,具體資費(fèi)規(guī)則詳見 文本翻譯服務(wù)報(bào)價(jià) 。
功能介紹
有道翻譯SDK是有道開放平臺(tái)提供的云服務(wù)之一,是有道在線翻譯接口的一種實(shí)現(xiàn),同時(shí),支持離線中英查詞。有道翻譯SDK支持中文和目標(biāo)文字(日文、英文、韓文、法文、俄文、葡萄牙文、西班牙文、越南文、中文繁體、德文、阿拉伯文和印尼文)之間的互譯。
兼容性
支持設(shè)備:運(yùn)行了iOS 8.0及以上系統(tǒng)的 iOS 設(shè)備
翻譯SDK集成指南
集成前提
開始集成SDK之前開發(fā)者需要登錄 有道智云平臺(tái) ,創(chuàng)建應(yīng)用獲取應(yīng)用ID(或者通過運(yùn)營(yíng)人員獲取應(yīng)用ID),以便使用翻譯服務(wù)。
集成步驟
SDK包導(dǎo)入
翻譯SDK由如下幾個(gè)SDK組成,用戶可根據(jù)需要組合使用:
文件 |
說明 |
FanYiSDK.h |
頭文件(必選) |
libbase.a |
翻譯相關(guān)SDK基礎(chǔ)庫(kù)(必選) |
libhanyucidianoffline.a |
漢語詞典翻譯SDK(可選,使用漢語詞典功能時(shí)使用) |
libonline.a |
在線翻譯SDK(可選,包含英漢互譯,以及小語種翻譯,在線查詢) |
libwordoffline.a |
離線查詞SDK(可選,中英單詞的離線查詢) |
libsencentenceoffline.a |
離線句子SDK(可選,中英句子的離線查詢) |
libSpeechRecognition.a |
短語音識(shí)別SDK(可選,15秒短語音識(shí)別功能) |
libspeechtransonline.a |
語音翻譯SDK(可選,語音翻譯功能) |
libocrtrans.a |
圖片翻譯SDK(可選,圖片翻譯功能) |
libStreamASR.a |
流式語音識(shí)別SDK(可選,流式語音識(shí)別功能) |
libSpeechEvaluation.a |
在線語音評(píng)測(cè)SDK(可選,在線語音評(píng)測(cè)功能) |
fanyidemo |
SDK使用demo |
StaticResource |
StaticResource文件夾下的文件用于離線查詞和漢語詞典翻譯,如果不使用離線功能,不需要StaticResource文件。 |
文件目錄如下圖所示:

說明:無論使用何種功能,都需要加入 FanYiSDK.h
和 libbase.a
,和相應(yīng)功能的SDK,各SDK可組合使用。
(1) 添加頭文件和庫(kù)文件:將 translateSDK 添加到工程中,包括 FanYiSDK.h 頭文件、libbase.a文件和要導(dǎo)入功能對(duì)應(yīng)的SDK包??梢灾苯訉?translateSDK 文件夾拖動(dòng)到工程中,也可以選擇File “Add files to ‘Project Name’…”
(2) 設(shè)置工程 Other Linker Flags 為 -ObjC

(3) 若使用離線功能,修改工程中任意一個(gè)類后綴名為 .mm
,參見 demo 中 ViewController.mm,Xcode 10.0之前的版本需要添加libstc++.6.0.9.tbd,Xcode 10.0及以上版本需要設(shè)置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(應(yīng)用ID),只執(zhí)行初始化一次即可。
注:appKey即應(yīng)用ID
//初始化appKey(應(yīng)用ID)
YDTranslateInstance *yd = [YDTranslateInstance sharedInstance];
yd.appKey = @"your appkey";
功能集成
1.離線漢語詞典查詞功能
說明:請(qǐng)參考 demo 中 HanyucidianViewController 的使用
(1) 使用的庫(kù)文件:頭文件、libbase.a、libhanyucidianoffline.a,以及離線詞庫(kù)文件hh,離線詞庫(kù)可以下載或者放入工程中,開發(fā)者根據(jù)需求自行決定:若下載則需要提供下載url,先下載再初始化;若放入工程中則可提詞庫(kù)路徑直接初始化。
(2) 構(gòu)造查詢器
offlinetranslate = [YDHanyucidianOfflineTranslate request];
(3) 初始化離線詞庫(kù)
-(void)offLineInit {
// 執(zhí)行此初始化方法之后,確保hh文件在指定路徑中存在(hh文件可壓縮成zip文件后供用戶下載,客戶端使用之前解壓即可)
if([offlinetranslate initOfflineWithPath:[XUtil getDownloadPath]]){
[HUDUtil show:self.view text:@"離線查詞初始化成功"];
}else{
[HUDUtil show:self.view text:@"離線查詞初始化失敗"];
}
}
注意: initOffline
方法是 YDHanyucidianOfflineTranslate
的實(shí)例方法,當(dāng) YDHanyucidianOfflineTranslate
被重新初始化之后,若想使用離線查詞,必須調(diào)用 initOffline
方法。
(4) 執(zhí)行查詞過程。
查詢,返回兩種情況,一種是成功,相關(guān)結(jié)果存儲(chǔ)在 response
參數(shù)中,另外一種是失敗,失敗信息放在error
中,可根據(jù) 錯(cuò)誤代碼 進(jìn)行查詢。整個(gè)查詢是異步的,查詢結(jié)果存在數(shù)組中。
[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.在線查詞和翻譯功能(支持小語種)
說明:請(qǐng)參考demo中TranslatesViewController的使用
(1) 使用的庫(kù)文件:頭文件、libbase.a、libonline.a
(2) 構(gòu)造查詢器
translateRequest = [YDTranslateRequest request];
(3) 設(shè)置查詞所需要的附加信息
YDTranslateParameters *parameters = [YDTranslateParameters targeting];
parameters.source = @"youdaosw";
parameters.from = YDLanguageTypeChinese;
parameters.to = YDLanguageTypeEnglish;
translateRequest.translateParameters = parameters;
(4) 執(zhí)行查詞過程
查詢,返回兩種情況,一種是成功,相關(guān)結(jié)果存儲(chǔ)在 response
參數(shù)中,另外一種是失敗,失敗信息放在error
中,可根據(jù) 錯(cuò)誤代碼 進(jìn)行查詢。整個(gè)查詢是異步的。
[translateRequest lookup:[_translate objectForKey:@"content"] WithCompletionHandler:^(YDTranslateRequest *request, YDTranslate *response, NSError *error) {
if (error) {
//查詢失敗
} else {
//查詢成功
}
}];
3.離線漢英單詞互譯功能
說明:請(qǐng)參考 demo 中 OfflineTranslatesViewController 的使用, StaticResource 中文件夾中包含離線查詞的庫(kù)。
(1) 使用的庫(kù)文件:頭文件、libbase.a、libwordoffline.a、以及離線詞庫(kù),離線詞庫(kù)可以下載或者放入工程中,開發(fā)者根據(jù)需求自行決定:若下載則需要提供下載url,先下載再初始化;若放入工程中則可提詞庫(kù)路徑直接初始化。
(2) 構(gòu)造查詢器
offlinetranslate = [YDWordOfflineTranslate request];
(3) 初始化離線詞庫(kù)
離線查詞包含2個(gè)庫(kù),dicta 和 dictb,區(qū)別是 dicta 詞庫(kù)包含的詞比較多,文件較大,dictb 只包含常見詞匯。開發(fā)者可根據(jù)實(shí)際情況,選擇一個(gè)詞庫(kù)使用即可。下面以 dictb 詞庫(kù)為例,介紹如何使用離線查詞功能。
使用離線查詢功能, 涉及到4個(gè)包,ba160111.ydd,bb160111,dictWithSeg.dat,yddict.dat.其中 dictWithSeg.dat 和 yddict.idx 文件必須導(dǎo)入到工程中,并且已經(jīng)添加到 Copy bundle Resource 中。如下:

ba160111.ydd 和 bb160111 支持兩種路徑。開發(fā)者可指定詞庫(kù)的位置,也可以打到安裝包中,分別調(diào)用不同的初始化方法即可。
//可選方式一、指定離線詞庫(kù)(ba160111.ydd和bb160111.ydd文件的)路徑。注意,調(diào)用前提是該位置下已經(jīng)包含這兩個(gè)文件,否則初始化失敗。
[offlinetranslate initOfflineWithPath:[XUtil getDownloadPath]];//布爾型返回值,代表初始化成功或者失敗
//可選方式二、離線詞庫(kù)在安裝包中(需要將這2個(gè)文件導(dǎo)入到工程中,確保Copy bundle Resource中能找到這2個(gè)文件)
[offlinetranslate initOffline]; //布爾型返回值,代表初始化成功或者失敗
注意:initOffline方法是YDWordOfflineTranslate的實(shí)例方法,當(dāng)YDWordOfflineTranslate被重新初始化之后,若想使用離線查詞,必須調(diào)用initOffline方法。
(4) 執(zhí)行查詞過程
查詢,返回兩種情況,一種是成功,相關(guān)結(jié)果存儲(chǔ)在 response
參數(shù)中,另外一種是失敗,失敗信息放在error
中,可根據(jù) 錯(cuò)誤代碼 進(jìn)行查詢。整個(gè)查詢是異步的。
[offlinetranslate lookup:[_translate objectForKey:@"content"] WithCompletionHandler:^(YDWordOfflineTranslate *request, YDTranslate *translte, NSError *error) {
if (error) {
//查詢失敗
} else {
//查詢成功
}
}];
4.離線漢英句子互譯功能
說明:請(qǐng)參考 demo 中 SentenceOfflineTranslateViewController 的使用
(1) 使用的庫(kù)文件:頭文件、libbase.a、libsencentenceoffline.a,以及離線詞庫(kù)文件ce.zip,離線詞庫(kù)可以下載或者放入工程中,開發(fā)者根據(jù)需求自行決定:若下載則需要提供下載url,先下載再初始化;若放入工程中則可提詞庫(kù)路徑直接初始化。
(2) 構(gòu)造查詢器
offlinetranslate = [YDSentenceOfflineTranslate request];
(3) 初始化離線詞庫(kù)
-(void)offLineInit{
//初始化之前先下載離線詞庫(kù)文件ce.zip(參見demo),每次查詢均要先初始化離線翻譯句子詞庫(kù)
if([offlinetranslate initOfflineSenWithPath:[XUtil getDownloadPath]]){
[HUDUtil show:self.view text:@"離線句子初始化成功"];
}else{
[HUDUtil show:self.view text:@"離線句子初始化失敗"];
}
}
注意: offLineInit
方法是 YDSentenceOfflineTranslate
的實(shí)例方法,當(dāng) YDSentenceOfflineTranslate
被重新初始化之后,若想使用離線查詞,必須調(diào)用 offLineInit
方法。
(4) 執(zhí)行查詞過程。
查詢,返回兩種情況,一種是成功,相關(guān)結(jié)果存儲(chǔ)在 response
參數(shù)中,另外一種是失敗,失敗信息放在error
中,可根據(jù) 錯(cuò)誤代碼 進(jìn)行查詢。整個(gè)查詢是異步的,查詢結(jié)果存在數(shù)組中。
[offlinetranslate lookup:[_translate objectForKey:@"content"] WithCompletionHandler:^(YDSentenceOfflineTranslate *request, YDTranslate *translte, NSError *error) {
if (error) {
//查詢失敗
} else {
//查詢成功
}
}];
5.deeplink 跳轉(zhuǎn)
說明:請(qǐng)參考 demo 中 DetailWordsViewController 的使用
點(diǎn)擊查看更多,將進(jìn)行deeplink跳轉(zhuǎn),若安裝有道詞典,則跳轉(zhuǎn)到有道詞典app里并顯示所查單詞的解釋,若未安裝有道詞典,則跳轉(zhuǎn)到Safari瀏覽器web界面并顯示所查單詞的解釋;
- (void)toDict{
// //跳轉(zhuǎn)到詞典
[_translate.ydTranslate openMore];
}
若在漢語詞典界面點(diǎn)擊查看更多,也會(huì)進(jìn)行deeplink跳轉(zhuǎn);
- (void)toDict{
//跳轉(zhuǎn)到詞典
if (self.transltes.count) {
YDChDictTranslate *translate = [self.transltes objectAtIndex:0];
[translate openMore];
}
}
6.在線語音翻譯功能
說明:請(qǐng)參考 demo 中 SpeechOnlineViewController 的使用
(1) 使用的庫(kù)文件:頭文件、libbase.a、libspeechtransonline.a;
(2) 構(gòu)造查詢器
YDSpeechOnlineRequest *request = [YDSpeechOnlineRequest request];
(3) 設(shè)置查詞所需要的附加信息
YDSpeechOnlineParam *param = [YDSpeechOnlineParam param];
param.from = @"en";//源語言
param.to = @"zh-CHS";//翻譯目標(biāo)語言
param.rate = @"16000";//采樣率
param.channel = @"1";//聲道數(shù),目前只支持單聲道,請(qǐng)寫固定值1
param.voice = @"0"; //女聲代碼為0,男聲代碼為1,英語有四種:0 美式女聲 1 美式男聲 2 英式女聲 3 英式男聲
request.param = param;
(4) 執(zhí)行語音翻譯過程
查詢輸入為語音base64編碼,返回兩種情況,一種是成功,相關(guān)結(jié)果存儲(chǔ)在 info
參數(shù)中,另外一種是失敗,失敗信息放在error
中,可根據(jù) 錯(cuò)誤代碼 進(jìn)行查詢。
[request lookup:base64Str WithCompletionHandler:^(YDSpeechOnlineRequest *request, NSDictionary *info, NSError *error) {
if (error) {
//查詢失敗
} else {
//查詢成功
YDSpeechResult *result = [YDSpeechResult mj_objectWithKeyValues:info];
[self showResult:result];
}
}];
7.在線短語音識(shí)別功能
說明:支持最長(zhǎng)15秒的短語音在線識(shí)別功能,請(qǐng)參考 demo 中 SpeechRecognitionViewController 的使用;
(1) 使用的庫(kù)文件:頭文件、libbase.a、libSpeechRecognition.a;
(2) 構(gòu)造查詢器
YDSpeechRecognitionRequest *request = [YDSpeechRecognitionRequest request];
(3) 設(shè)置語音識(shí)別所需要的附加信息
YDSpeechRecognitionParam *param = [YDSpeechRecognitionParam param];
param.langType = @"zh-CHS";//源語言
param.rate = @"8000";//采樣率
param.channel = @"1";//聲道數(shù),目前只支持單聲道,請(qǐng)寫固定值1
request.param = param;
(4) 執(zhí)行語音識(shí)別過程
查詢輸入為語音base64編碼,返回兩種情況,一種是成功,相關(guān)結(jié)果存儲(chǔ)在 info
參數(shù)中,另外一種是失敗,失敗信息放在error
中,可根據(jù) 錯(cuò)誤代碼 進(jìn)行查詢。
[request lookup:base64Str WithCompletionHandler:^(YDSpeechRecognitionRequest *request, NSDictionary *info, NSError *error) {
if (!error) {
YDSpeechRecognitionResult *result = [YDSpeechRecognitionResult initWithDict:info];
[self showResult:result];
}
}];
8.在線圖片翻譯功能
說明:請(qǐng)參考 demo 中 OCRTransController 的使用
(1) 使用的庫(kù)文件:頭文件、libbase.a、libocrtrans.a;
(2) 構(gòu)造查詢器
YDOCRTransRequest *request = [YDOCRTransRequest request];
(3) 設(shè)置查詞所需要的附加信息
YDOCRTransParameter *param = [YDOCRTransParameter param];
param.from = @"en"; //設(shè)置源語言
param.to = @"zh-CHS"; //設(shè)置目標(biāo)語言
request.param = param;
(4) 執(zhí)行圖片翻譯過程
查詢輸入為圖片base64編碼,返回兩種情況,一種是成功,相關(guān)結(jié)果存儲(chǔ)在 info
參數(shù)中,另外一種是失敗,失敗信息放在error
中,可根據(jù) 錯(cuò)誤代碼 進(jìn)行查詢。
[request lookup:base64Str WithCompletionHandler:^(YDOCRTransRequest *request, NSDictionary *info, NSError *error) {
if (error) {
//查詢失敗
} else {
//查詢成功
YDOCRTransResult *result = [YDOCRTransResult mj_objectWithKeyValues:info];
[self showResult:result];
}
}];
9.流式語音識(shí)別功能
說明:支持實(shí)時(shí)流式語音識(shí)別,目前支持中英文,請(qǐng)參考 demo 中 StreamASRController 的使用
(1) 使用的庫(kù)文件:頭文件、libbase.a、libStreamASR.a;
(2) 構(gòu)造識(shí)別器
YDSpeechRecognizer *recognizer = [YDSpeechRecognizer sharedRecognizer];
recognizer.delegate = self;
(3) 設(shè)置識(shí)別所需要的附加信息
YDSpeechRecognizerParam *param = [YDSpeechRecognizerParam param];
param.langType = @"zh-CHS";//源語言
param.rate = @"16000";//采樣率
param.format = @"wav";//語音文件格式
param.vadBOS = 2000;//前端點(diǎn)靜音檢測(cè)時(shí)長(zhǎng),ms
param.vadEOS = 2000;//后端點(diǎn)靜音檢測(cè)時(shí)長(zhǎng),ms
recognizer.param = param;
(4) 執(zhí)行語音識(shí)別過程
執(zhí)行[self.recognizer startListening];
開始流式語音識(shí)別,結(jié)果將在代理方法中回調(diào)給開發(fā)者;
#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(@"檢測(cè)到%@靜音", isBOS ? @"前端點(diǎn)" : @"后端點(diǎn)");
}
10.在線語音評(píng)測(cè)功能
說明:支持在線語音評(píng)測(cè),目前只支持英語評(píng)測(cè),請(qǐng)參考 demo 中 SpeechEvaluationController 的使用
(1) 使用的庫(kù)文件:頭文件、libbase.a、libSpeechEvaluation.a;
(2) 構(gòu)造識(shí)別器
YDSpeechEvaluationRequest *request = [YDSpeechEvaluationRequest request];
(3) 設(shè)置識(shí)別所需要的附加信息
YDSpeechEvaluationParam *param = [YDSpeechEvaluationParam param];
param.langType = @"en";//目前只支持英語評(píng)測(cè)
param.rate = @"16000";//采樣率
param.channel = @"1";//聲道數(shù),目前只支持單聲道,請(qǐng)寫固定值1
request.param = param;
(4) 執(zhí)行語音識(shí)別過程
查詢輸入為語音錄音文件base64的字符串,返回結(jié)果回調(diào)在block中,若成功返回則info包含了返回的所有json數(shù)據(jù),開發(fā)者可自定義model對(duì)返回的info數(shù)據(jù)進(jìn)行解析;
[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 |
斐濟(jì)語 |
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 |
宿務(wù)語 |
ceb |
科西嘉語 |
co |
世界語 |
eo |
菲律賓語 |
tl |
弗里西語 |
fy |
加利西亞語 |
gl |
格魯吉亞語 |
ka |
古吉拉特語 |
gu |
豪薩語 |
ha |
夏威夷語 |
haw |
冰島語 |
is |
伊博語 |
ig |
愛爾蘭語 |
ga |
爪哇語 |
jw |
卡納達(dá)語 |
kn |
哈薩克語 |
kk |
高棉語 |
km |
庫(kù)爾德語 |
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 |
自動(dòng)識(shí)別 |
auto |
其中auto可以識(shí)別中文、英文、日文、韓文、法文、西班牙文、葡萄牙文、俄文、越南文、德文、阿拉伯文、印尼文、意大利文,其他語種無法識(shí)別,為提高準(zhǔn)確率,請(qǐng)指定語種。其中粵語作為from時(shí),某些小語種不能翻譯。
錯(cuò)誤代碼列表
錯(cuò)誤碼 |
含義 |
101 |
缺少必填的參數(shù) |
102 |
不支持的語言類型 |
103 |
翻譯文本過長(zhǎng) |
104 |
不支持的API類型 |
105 |
不支持的簽名類型 |
106 |
不支持的響應(yīng)類型 |
107 |
不支持的傳輸加密類型 |
108 |
應(yīng)用ID無效,注冊(cè)賬號(hào),登錄后臺(tái)創(chuàng)建應(yīng)用和實(shí)例并完成綁定,可獲得應(yīng)用ID和應(yīng)用密鑰等信息 |
109 |
batchLog格式不正確 |
110 |
無相關(guān)服務(wù)的有效實(shí)例 |
111 |
開發(fā)者賬號(hào)無效 |
113 |
q不能為空 |
114 |
不支持的圖片傳輸方式 |
201 |
解密失敗,可能為DES,BASE64,URLDecode的錯(cuò)誤 |
202 |
簽名檢驗(yàn)失敗 |
203 |
訪問IP地址不在可訪問IP列表 |
205 |
請(qǐng)求的接口與應(yīng)用的平臺(tái)類型不一致,如有疑問請(qǐng)參考入門指南 |
206 |
因?yàn)闀r(shí)間戳無效導(dǎo)致簽名校驗(yàn)失敗 |
207 |
重放請(qǐng)求 |
301 |
辭典查詢失敗 |
302 |
翻譯查詢失敗 |
303 |
服務(wù)端的其它異常 |
304 |
會(huì)話閑置太久超時(shí) |
401 |
賬戶已經(jīng)欠費(fèi)停 |
402 |
offlinesdk不可用 |
411 |
訪問頻率受限,請(qǐng)稍后訪問 |
412 |
長(zhǎng)請(qǐng)求過于頻繁,請(qǐng)稍后訪問 |
1001 |
無效的OCR類型 |
1002 |
不支持的OCR image類型 |
1003 |
不支持的OCR Language類型 |
1004 |
識(shí)別圖片過大 |
1201 |
圖片base64解密失敗 |
1301 |
OCR段落識(shí)別失敗 |
1411 |
訪問頻率受限 |
1412 |
超過最大識(shí)別字節(jié)數(shù) |
2003 |
不支持的語音聲道 |
2004 |
不支持的語音上傳類型 |
2005 |
不支持的語言類型 |
2006 |
不支持的識(shí)別類型 |
2201 |
識(shí)別音頻文件過大 |
2301 |
識(shí)別音頻時(shí)長(zhǎng)過長(zhǎng) |
2411 |
不支持的音頻文件類型 |
2412 |
不支持的發(fā)音類型 |
3001 |
不支持的語音格式 |
3002 |
不支持的語音采樣率 |
3003 |
不支持的語音聲道 |
3004 |
不支持的語音上傳類型 |
3005 |
不支持的語言類型 |
3006 |
不支持的識(shí)別類型 |
3007 |
識(shí)別音頻文件過大 |
3008 |
識(shí)別音頻時(shí)長(zhǎng)過長(zhǎng) |
3009 |
不支持的音頻文件類型 |
3010 |
不支持的發(fā)音類型 |
3201 |
解密失敗 |
3301 |
語音識(shí)別失敗 |
3302 |
語音翻譯失敗 |
3303 |
服務(wù)的異常 |
3411 |
訪問頻率受限,請(qǐng)稍后訪問 |
3412 |
超過最大請(qǐng)求字符數(shù) |
4001 |
不支持的語音識(shí)別格式 |
4002 |
不支持的語音識(shí)別采樣率 |
4003 |
不支持的語音識(shí)別聲道 |
4004 |
不支持的語音上傳類型 |
4005 |
不支持的語言類型 |
4006 |
識(shí)別音頻文件過大 |
4007 |
識(shí)別音頻時(shí)長(zhǎng)過長(zhǎng) |
4201 |
解密失敗 |
4301 |
語音識(shí)別失敗 |
4303 |
服務(wù)的異常 |
4411 |
訪問頻率受限,請(qǐng)稍后訪問 |
4412 |
超過最大請(qǐng)求時(shí)長(zhǎng) |
5001 |
無效的OCR類型 |
5002 |
不支持的OCR image類型 |
5003 |
不支持的語言類型 |
5004 |
識(shí)別圖片過大 |
5005 |
不支持的圖片類型 |
5006 |
文件為空 |
5201 |
解密錯(cuò)誤,圖片base64解密失敗 |
5301 |
OCR段落識(shí)別失敗 |
5411 |
訪問頻率受限 |
5412 |
超過最大識(shí)別流量 |
9001 |
不支持的語音格式 |
9002 |
不支持的語音采樣率 |
9003 |
不支持的語音聲道 |
9004 |
不支持的語音上傳類型 |
9005 |
不支持的語音識(shí)別 Language類型 |
9301 |
ASR識(shí)別失敗 |
9303 |
服務(wù)器內(nèi)部錯(cuò)誤 |
9411 |
訪問頻率受限(超過最大調(diào)用次數(shù)) |
9412 |
超過最大處理語音長(zhǎng)度 |
10001 |
無效的OCR類型 |
10002 |
不支持的OCR image類型 |
10004 |
識(shí)別圖片過大 |
10201 |
圖片base64解密失敗 |
10301 |
OCR段落識(shí)別失敗 |
10411 |
訪問頻率受限 |
10412 |
超過最大識(shí)別流量 |
11001 |
不支持的語音識(shí)別格式 |
11002 |
不支持的語音識(shí)別采樣率 |
11003 |
不支持的語音識(shí)別聲道 |
11004 |
不支持的語音上傳類型 |
11005 |
不支持的語言類型 |
11006 |
識(shí)別音頻文件過大 |
11007 |
識(shí)別音頻時(shí)長(zhǎng)過長(zhǎng),最大支持30s |
11201 |
解密失敗 |
11301 |
語音識(shí)別失敗 |
11303 |
服務(wù)的異常 |
11411 |
訪問頻率受限,請(qǐng)稍后訪問 |
11412 |
超過最大請(qǐng)求時(shí)長(zhǎng) |
12001 |
圖片尺寸過大 |
12002 |
圖片base64解密失敗 |
12003 |
引擎服務(wù)器返回錯(cuò)誤 |
12004 |
圖片為空 |
12005 |
不支持的識(shí)別圖片類型 |
12006 |
圖片無匹配結(jié)果 |
13001 |
不支持的角度類型 |
13002 |
不支持的文件類型 |
13003 |
表格識(shí)別圖片過大 |
13004 |
文件為空 |
13301 |
表格識(shí)別失敗 |
15001 |
需要圖片 |
15002 |
圖片過大(1M) |
15003 |
服務(wù)調(diào)用失敗 |
17001 |
需要圖片 |
17002 |
圖片過大(1M) |
17003 |
識(shí)別類型未找到 |
17004 |
不支持的識(shí)別類型 |
17005 |
服務(wù)調(diào)用失敗 |
-1000 |
未知錯(cuò)誤 |
-2000 |
查詢輸入為空 |
常見問題及注意事項(xiàng)
1.翻譯沒結(jié)果?
檢查下翻譯接口回調(diào)的錯(cuò)誤信息,保證申請(qǐng)的應(yīng)用ID是有效且提前綁定了。
2.離線查詢無效?
確保離線庫(kù)正確放置,離線初始化成功。
3.添加翻譯 SDK 之后審核沒有通過?
翻譯 SDK 使用了 AdSupport 框架獲取設(shè)備 IDFA 信息用以統(tǒng)計(jì)計(jì)費(fèi),提交審核時(shí)對(duì)應(yīng)用是否有廣告選項(xiàng)請(qǐng)選擇“是”。
版本更新記錄
上線日期 |
版本號(hào) |
更新內(nèi)容 |
2017.05.08 |
v1.0.0 |
有道智云翻譯 iOS SDK上線,支持在線離線翻譯 |
2017.06.07 |
v1.1.0 |
1. 拆分翻譯 SDK,SDK 拆分為多個(gè)文件,用戶可根據(jù)需要引用 2. 修復(fù)已知 bug |
2017.06.30 |
v1.2.0 |
修復(fù)已知 bug |
2017.07.24 |
v1.3.0 |
修復(fù) deeplink 相關(guān) bug |
2017.08.16 |
v1.4.0 |
修復(fù)已知 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 |
增加流式語音識(shí)別,支持中英文 |
2018.11.16 |
v1.10.0 |
增加語音評(píng)測(cè),支持英文 |