Il réalise rapidement TTS basé sur le package SDK Iflytek Offline Voice et prend en charge le réglage des voix masculines et féminines. Étant donné que la version IFLYTEK Offline Voice Experience a un problème de période de validité, la version SDK a été réduite pour être résolue. Il est toujours disponible pour une utilisation normale.
La version supérieure d'Android rapportera l'erreur 21002. Actuellement, le test ci-dessous Android 6.0 est utilisé normalement. Pour résoudre ce problème, vous devez mettre à niveau la version SDK;
Vous pouvez d'abord exécuter la démo, et s'il ne s'écrase pas, cela devrait fonctionner normalement.
allprojects {
repositories {
.. .
maven { url ' https://jitpack.io ' }
}
} //仅支持armeabi-v7a。
dependencies {
implementation ' com.github.shenbengit:TTSTool:Tag '
}AndroidManifest.xml a été ajouté, des autorisations dangereuses peuvent devoir être gérées par vous-même.
<!--连接网络权限,用于执行云端语音能力 -->
< uses-permission android : name = " android.permission.INTERNET " />
<!--获取手机录音机使用权限,听写、识别、语义理解需要用到此权限 -->
< uses-permission android : name = " android.permission.RECORD_AUDIO " />
<!--读取网络信息状态 -->
< uses-permission android : name = " android.permission.ACCESS_NETWORK_STATE " />
<!--获取当前wifi状态 -->
< uses-permission android : name = " android.permission.ACCESS_WIFI_STATE " />
<!--允许程序改变网络连接状态 -->
< uses-permission android : name = " android.permission.CHANGE_NETWORK_STATE " />
<!--读取手机信息权限 -->
< uses-permission android : name = " android.permission.READ_PHONE_STATE " />
<!--读取联系人权限,上传联系人需要用到此权限 -->
< uses-permission android : name = " android.permission.READ_CONTACTS " />
<!--外存储写权限,构建语法需要用到此权限 -->
< uses-permission android : name = " android.permission.WRITE_EXTERNAL_STORAGE " />
<!--外存储读权限,构建语法需要用到此权限 -->
< uses-permission android : name = " android.permission.READ_EXTERNAL_STORAGE " />
<!--配置权限,用来记录应用配置信息 -->
< uses-permission android : name = " android.permission.WRITE_SETTINGS " />
<!--手机定位信息,用来为语义等功能提供定位,提供更精准的服务-->
<!--定位信息是敏感信息,可通过Setting.setLocationEnable(false)关闭定位请求 -->
< uses-permission android : name = " android.permission.ACCESS_FINE_LOCATION " />
<!--如需使用人脸识别,还要添加:摄相头权限,拍照需要用到 -->
< uses-permission android : name = " android.permission.CAMERA " /> /* *
* 必须在主进程初始化
* @param context
* @param isFemaleVoice 是否是女声,true:女声,false:男声
* @param listener 初始化结果回调,成功:[ErrorCode.SUCCESS]
*/
TTSManager .getInstance(). init (context : Context , isFemaleVoice : Boolean = true , listener : InitListener ? = null )
/* *
* 开始合成
*/
TTSManager .getInstance().startSpeaking(text : String )
/* *
* 停止合成
*/
TTSManager .getInstance().stopSpeaking()
/* *
* 是否正在合成
*/
TTSManager .getInstance().isSpeaking()
/* *
* 销毁
*/
TTSManager .getInstance().destroy()
/* *
* 监听回调
*/
TTSManager .getInstance().setSpeechStatusListener(listener : SpeechStatusListener ? )
Si vous utilisez Kotlin, vous pouvez également l'appeler rapidement
/* *
* 必须在主进程初始化
* @param context
* @param isFemaleVoice 是否是女声,true:女声,false:男声
*/
initTTS(context : Context , isFemaleVoice : Boolean = true , listener : InitListener ? = null )
/* *
* 开始合成
*/
startSpeaking(text : String )
/* *
* 停止合成
*/
stopSpeaking()
/* *
* 是否正在合成
*/
isSpeaking()
/* *
* 销毁
*/
destroyTTS()
/* *
* 监听回调
*/
setSpeechStatusListener(listener : TTSManager . SpeechStatusListener ? )
Des règles d'obscurcissement ont été ajoutées, n'ont généralement pas besoin d'être ajoutées par vous-même
-keep class com.iflytek.**{*;}
-keepattributes Signature