Javascript 只改变声音而不改变语言
我正在用react native制作一个应用程序,并使用react native tts包进行语音合成。我希望用户从手机中已经安装的语言中选择一种语言。我有一个语言选择屏幕,从中我将数据输入异步存储器,还有一个使用tts的屏幕。此屏幕从异步存储器获取数据,并使用该语言进行语音合成。但是,当我从选择屏幕中选择语言时,Tts语言仅在语言为英语(例如en In或en US)时才会更改 以下是语言选择屏幕中使用的代码Javascript 只改变声音而不改变语言,javascript,reactjs,react-native,text-to-speech,google-text-to-speech,Javascript,Reactjs,React Native,Text To Speech,Google Text To Speech,我正在用react native制作一个应用程序,并使用react native tts包进行语音合成。我希望用户从手机中已经安装的语言中选择一种语言。我有一个语言选择屏幕,从中我将数据输入异步存储器,还有一个使用tts的屏幕。此屏幕从异步存储器获取数据,并使用该语言进行语音合成。但是,当我从选择屏幕中选择语言时,Tts语言仅在语言为英语(例如en In或en US)时才会更改 以下是语言选择屏幕中使用的代码 changeLanguage = async () => { await
changeLanguage = async () => {
await AsyncStorage.setItem('LanguageId', this.state.selectedLanguage.id); // The voice Id
await AsyncStorage.setItem('Language', this.state.selectedLanguage.code); // The language code, 'en-IN' or 'en-US'
}
下面是使用Tts的屏幕的代码
async onReceiveFocus() {
const languageCode = await AsyncStorage.getItem('Language');
this.setState({
languageCode: languageCode
}); // Setting the state for other uses
Tts.setDefaultLanguage(languageCode);
}
解决方法:我只需卸载语言的语音数据并重新安装,它就开始工作了。我不知道为什么会发生这样的事情。问题解决了:我只需卸载语言的语音数据并重新安装,它就开始工作了。我不知道为什么会发生这样的事情。