运行百度语音识别官方iOS demo报错: load offline engine failed: 4001

运行官方BDVRClientSample这个demo(ios版的),demo可以安到手机上,但是点“识别UI”那个按钮后“授权验证失败”。
如果点“语音识别”那个按钮,控制台输出:2015-10-23 14:26:23.900 BDVRClientSample[3016:1654910] load offline engine failed: 4001

怀疑是license的问题,在文档中看到:

int ret = [[BDVoiceRecognitionClient sharedInstance] loadOfflineEngine:@”appCode”

license: @” 授权文件路径”

datFile: @” s_1 的文件路径” LMDatFile: LMDatFilePath grammSlot: recogGrammSlot]; 

然后我看sample的代码里写的是:

因此开始我还以为是因为license写nil导致的问题。后来发现不是(虽然本帖中的问题不是由于license填nil造成的,但如果想使用离线识别的话,license确实需要传一个正确的路径才行,见:http://www.cnblogs.com/wantnon/p/4915028.html。如果不需要离线识别功能,为包体积考虑,应将相应资源删除,见:http://www.cnblogs.com/wantnon/p/4915078.html)。问题出在没有提交应用的BundleID,提交应用BundleID的方法如下:

1,进入到“应用管理”。

2,点开“管理语音识别”的下拉菜单,选择其中的“申请离线识别授权”。

3,在弹出的“申请离线识别授权”面板中选iOS,填写BundleID,然后点“提交”。

如图所示:

然后再将sample工程的BundleID改成这里填写的BundleID,再运行,就ok了。

原文地址:https://www.cnblogs.com/wantnon/p/4904701.html