最近在研究语音识别,前段时间使用了百度语音识别,最近公司又突然让转用科大讯飞的SDK,感觉有点坑。不过 也算是学习了使用新的SDK了吧。在这里将集成SDK以及一些使用方法写一下。
第一步:获取APPid
先在科大讯飞语音识别开发者网站注册,获取APPid。
第二步:集成SDK
导入科大讯飞的iflyMSC.framework;然后再导入相关的依赖库:
第三步:初始化启动服务
在app delegate里面写入如下代码初始化
NSLog(@"%@",[IFlySetting getVersion]);
//设置sdk的log等级,log保存在下面设置的工作路径中
[IFlySetting setLogFile:LVL_ALL];
//打开输出在console的log开关
[IFlySetting showLogcat:NO];
//设置sdk的工作路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUser DomainMask, YES);
NSString *cachePath = [paths objectAtIndex:0];
[IFlySetting setLogFilePath:cachePath];
//创建语音配置,appid必须要传入,仅执行一次则可
NSString *initString = [[NSString alloc] initWithFormat:@"appid=%@",APPID_VALU E];
//所有服务启动前,需要确保执行createUtility
[IFlySpeechUtility createUtility:initString];
在使用的页面
- (void)viewWillAppear:(BOOL)animated
{
NSLog(@"%s",__func__);
[super viewWillAppear:animated];
[self initRecognizer];
}
- (void)viewWillDisappear:(BOOL)animated
{
NSLog(@"%s",__func__);
[super viewWillDisappear:animated];
[_iFlySpeechRecognizer cancel];
[_iFlySpeechRecognizer setDelegate:nil];
[_iFlySpeechRecognizer setParameter:@"" forKey:[IFlySpeechConstant PARAMS]];
}
//初始化识别参数
- (void)initRecognizer
{
NSLog(@"%s",__func__);