更新记录
1.0.0(首次上架固定初始版本)(2026-06-16)
下载此版本
1.0.0 初始版本
1、封装安卓原生TextToSpeech文字转语音播报能力;
2、支持自定义语速、音调、单次播报音量,播报结束自动还原用户原始媒体音量;
3、兼容Android7、Android11系统,修复Locale中文语言初始化兼容问题;
4、自动检测设备是否缺少中文TTS语音引擎,给出Toast提示;
5、支持指定次数循环播报,根据文本长度自动计算播报间隔;
6、提供强制停止播报方法,防止音频后台持续播放。
平台兼容性
uni-app(3.99)
| Vue2 |
Vue3 |
Chrome |
Safari |
app-vue |
app-nvue |
Android |
iOS |
鸿蒙 |
| - |
- |
- |
- |
- |
- |
7.0 |
- |
- |
| 微信小程序 |
支付宝小程序 |
抖音小程序 |
百度小程序 |
快手小程序 |
京东小程序 |
鸿蒙元服务 |
QQ小程序 |
飞书小程序 |
小红书小程序 |
快应用-华为 |
快应用-联盟 |
| - |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
其他
安卓 TTS 语音播报插件使用说明
一、插件介绍
- 插件信息
插件 ID:dev-tts-speech
插件版本:1.0.0
适配平台:Android(App 端)
系统兼容:Android 7 ~ Android 11
开发类型:JS 通用 SDK 插件
- 功能说明
基于安卓原生 TextToSpeech 实现文字转语音离线播报,无需联网
支持自定义语速、音调、播报音量三大参数配置
自动保存播报前系统媒体音量,播报结束后自动还原,不会修改用户原有音量
智能检测设备中文 TTS 引擎,缺失中文库时弹出友好提示
支持自定义循环播报次数,根据文本长度自动计算播报间隔时间
提供强制停止播报 API,可随时中断语音播放
修复 Android7 系统中文语言初始化兼容问题,规避 Pico 英文引擎无声 bug
二、安装方式
方式 1:插件市场导入
在 uni-app 插件市场搜索插件 ID:dev-tts-speech
点击【导入插件】,选择需要关联的项目完成导入
重新编译项目自定义调试基座即可使用
方式 2:本地手动引入
将插件文件夹复制到项目 nativePlugins/ 目录下
在项目 manifest.json -> App模块配置 -> 原生插件配置 中勾选本插件
重新生成自定义调试基座
三、快速上手
- 引入插件
javascript
运行
// 在需要使用的页面/全局js中引入
import { speakTxt, stopSpeak, setVolume } from '@/js_sdk/dev-tts-speech/ttsVoice.js'
- 全局参数配置
javascript
运行
// 全局默认配置(可自行修改)
var speakSpeed = 0.8 // 语速,取值范围:0.1 ~ 2.0,1.0为标准语速
var speakPitch = 0.8 // 音调(声音粗细),取值范围:0.1 ~ 2.0
var speakVolume = 1.0 // 单次播报音量,取值范围:0 ~ 1.0
- 核心 API 使用
3.1 发起语音播报
javascript
运行
/**
- 语音播报方法
- @param {String} text 需要播报的文本内容
- @param {Number} repeatCount 循环播报次数,默认1次
*/
speakTxt('请王小明同学到前台签到', 3)
3.2 强制停止语音播报
javascript
运行
// 立即终止当前所有语音播放,并自动还原系统原始音量
stopSpeak()
3.3 动态设置播报音量
javascript
运行
/**
- 临时设置媒体音量(播报结束自动还原)
- @param {Number} vol 音量比例 0 ~ 1.0
*/
setVolume(0.7)
四、参数详细说明
表格
参数名 取值范围 默认值 说明
speakSpeed 0.1 ~ 2.0 0.8 语速,小于 1 慢速,大于 1 快速
speakPitch 0.1 ~ 2.0 0.8 音调,数值越小声音越低沉,越大越尖锐
speakVolume 0.0 ~ 1.0 1.0 播报临时音量,不会永久修改系统音量
repeatCount 正整数 1 语音循环播报总次数
五、常见问题与解决方案
- Android 7 设备没有声音,提示「设备缺少中文语音引擎」
原因
安卓 7 原生默认搭载Pico TTS英文引擎,无中文语言数据包,无法播报中文。
解决方案
点击弹窗提示后,前往手机「设置 - 辅助功能 - 文字转语音输出」
将默认 TTS 引擎切换为:讯飞语音引擎 / Google 文字转语音
进入引擎设置,下载普通话中文语音包后重新播报即可。
- 多次调用播报,播放次数异常
插件内部使用局部变量记录播放次数,每次调用speakTxt都会自动重置计数,无需手动清零,多次调用不会出现次数错乱问题。
- 播报结束后手机音量被改变
插件会在每次播报前自动缓存当前系统媒体音量,播报完成 / 强制停止时自动还原用户原始音量,不会永久修改系统音量。
- 插件仅支持安卓吗?
本插件基于安卓原生TextToSpeech API 开发,仅支持 Android App 端,暂不支持 iOS、小程序、H5 平台。
六、版本更新日志
V1.0.0
首次发布,封装安卓原生 TTS 离线文字转语音播报能力
支持语速、音调、临时音量自定义配置,播报自动还原系统音量
兼容 Android7~Android11 系统,修复中文区域初始化兼容问题
增加 TTS 引擎缺失检测,缺失中文库时弹出友好 Toast 提示
支持自定义循环播报次数,根据文本长度自动计算播报间隔
提供停止播报接口,安全释放 TTS 实例,避免音频占用
七、注意事项
本插件仅在 App(Android)环境生效,H5、小程序、iOS 环境无法调用;
首次使用必须编译自定义调试基座,标准基座不支持原生 JS 插件;
离线播报依赖设备系统 TTS 引擎,部分厂商深度阉割的设备需要安装第三方中文语音引擎;
请勿频繁连续调用播报接口,建议两次播报间隔不少于 500ms,避免音频队列阻塞。