Skip to content

Latest commit

 

History

History
54 lines (46 loc) · 2.13 KB

README.md

File metadata and controls

54 lines (46 loc) · 2.13 KB

react-native-cn-tts

描述

目前在TTS方面,iOS内置了对中文语言对支持,但是Android中并没有,需要借助第三方的SDK才可实现,该组件对用途便是为React Native Android提供中文TTS的能力(百度语音提供)。如果你希望你的App在多平台下支持多种语言的TTS,可在该组件的基础上搭配使用:react-native-tts

安装

npm install react-native-cn-tts
react-native link react-native-cn-tts

配置

要正常使用该组件,需要先注册百度语音,并创建应用以获得授权

  1. 账号注册: 百度语音
  2. 创建应用: 应用管理内创建应用 - 输入名称 - 启动语音合成服务 - 选择Android平台 - 输入最终想要集成到的App包名,如com.symous.cntts
  3. 获取授权信息: 在现有应用列表内,找到创建的应用,可查看到App ID/Api Key/Secret Key
  4. 需要配置以下权限 (AndroidManifest.xml 文件)
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

开始使用

//引入module
import cntts from 'react-native-cn-tts'
//注册服务
cntts.init(appID,apiKey,secretKey).then(()=>{
  //注册成功
  tts.speak('成功了,老铁!');
}).catch((e)=>{
  //注册失败
})

cntts.addEventListener('tts-finish', () => {});
cntts.addEventListener('tts-cancel', () => {});
cntts.addEventListener('tts-start', (event) => {});
cntts.addEventListener('tts-progress', (event) => {});

方法

  • speak(text)
  • stop()
  • pause()
  • resume()
  • addEventListener()