Unity 在iOS端 接入科大讯飞语音识别 识别成功或识别结束后 游戏声音消失

问题简述:
Unity发布的xcode工程(已接入科大讯飞的语音识别),在语音识别操作结束后,游戏声音就莫名消失了。

解决方式为:重写AVAudioSession的setAction方法。

因为AVAudioSession是AVFAudio.Framework中的类,所以无法直接在源码中改写。所以只能新建一个类来重写。步骤如下:

1.新建AddAction.m和AddAction.h文件,代码如下:

AddAction.h:

#import 

@interface AVAudioSession (AddAction)
@end

AddAction.m:

#import "AddAction.h"

@implementation AVAudioSession (AddAction)
- (BOOL)setActive:(BOOL)active withOptions:(AVAudioSessionSetActiveOptions)options error:(NSError * _Nullable __autoreleasing *)outError {
    return YES;//强行返回true
}
@end  

2.重新Clean工程,然后问题就解决了。

具体产生这个问题的原因,我也只有一个模糊的概念,不能下定论,所以这里就不写出来了。

你可能感兴趣的:(Unity 在iOS端 接入科大讯飞语音识别 识别成功或识别结束后 游戏声音消失)