当需要使⽤外部TTS播报功能时,可以不⽤导⼊libBNTTSComponentSDK_OpenSDK.a静态库。通过设置 导航播报的代理,在TTS⽂本回调中进⾏TTS播报。
设置导航播报的代理:
[BNaviService_Sound setSoundDelegate:self];
监听TTS文本回调:
BNSoundProtocol:
/** * TTS⽂本回调 * / - (void)onPlayTTS:(NSString*)text; /** * TTS⾳效回调 * @param type ⾳效类型 * @param filePath ⾳频⽂件路径 * / - (void)onPlayVoiceSound:(BNVoiceSoundType)type filePath:(NSString *)filePath; /** * 播报或进⼊导航的时候都会检测TTS是否鉴权成功 * (1)如果还没鉴权成功,会尝试先鉴权,然后回调鉴权结果, * (2)如果已经鉴权成功,也会回调鉴权成功 * / - (void)onTTSAuthorized:(BOOL)success;
BNSoundProtocol :
主要是导航中的播报使⽤。⽬前以下接⼝已被删除。外部调⽤⽆效果。
/** * 是否正在播报 * @return 是否正在播报 */-(BOOL)isTTSPlaying; /** * 暂停播报 */-(BOOL)pause; /** * 恢复播报 */-(BOOL)resume; /** * 播报⽂本,使⽤内部TTS播报时有效 * @param text : 需要播报的⽂本 */-(BOOL)playText:(NSString*)text;