更新记录

1.0.0(2026-03-16)

文字转语音(文字播报、语音合成、免服务费)、震动提示 ba-tts-u-new(UTS版)


平台兼容性

uni-app(3.7.0)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
- - - - -
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
- - - - - - - - - - - -

uni-app x(3.7.0)

Chrome Safari Android iOS 鸿蒙 微信小程序
- - -

其他

多语言 暗黑模式 宽屏模式
×

ba-tts-u-new

UTS语音合成插件,提供 TTS 语音合成振动 能力(无服务费),可用于播报提示、朗读内容等场景。(注意:建议先试用,再购买)。

  • 同时支持三端(安卓、iOS、Harmony)
  • 支持语音合成,文本转语音
  • 支持震动

支持定制,有建议和需要,可点击这里

也可关注博客,实时更新最新插件

uniapp 常用原生插件大全

文字转语音(文字播报、语音合成、免服务费)、震动提示 Ba-TTS


使用说明

// 1. 引入
import { speak, stopSpeak, playVibrate, cancelVibrate } from '@/uni_modules/ba-tts-u-new';

// 2. TTS 朗读
speak({
  text: '你好,世界',
  pitch: 1.0,
  speed: 1.0,
  success: (res) => console.log('speak success', res),
  fail: (res) => console.error('speak fail', res),
  complete: (res) => console.log('speak complete', res),
  statusChange: (res) => console.log('status', res.action, res.status), // onStart / onDone / onError
});

// 3. 停止朗读
stopSpeak({
  success: (res) => console.log('stop success', res),
});

// 4. 振动(单次约 500ms,具体时长依平台实现略有差异)
playVibrate({
  // 可选:pattern: [0, 500],
  success: (res) => console.log('vibrate success', res),
});

// 5. 取消振动(如平台支持)
cancelVibrate({
  success: (res) => console.log('cancel vibrate success', res),
});

方法与参数清单

speak(options: StartOptions)

功能:文本转语音播报。

参数 StartOptions

字段名 类型 必填 说明
text string 要朗读的文本,不能为空字符串。
pitch number 音调,默认 1.0,> 0 时有效。
speed number 语速,默认 1.0,> 0 时有效。
success (res: ApiResult) => void 调用成功回调,res.ok === true
fail (res: ApiResult) => void 调用失败回调,res.ok === false
complete (res: ApiResult) => void 成功或失败都会回调一次。
statusChange (res: StatusResult) => void TTS 状态回调:res.actiononStart / onDone / onError

回调结构:

type ApiResult = {
  ok: boolean;  // true/false
  msg: string;  // 描述信息,如 'success'、错误原因等
};

type StatusResult = {
  action: string; // "onStart" | "onDone" | "onError"
  status: string; // 平台返回的状态描述
};

stopSpeak(options: StopOptions)

功能:停止当前朗读并释放 TTS 实例(重复调用安全)。

参数 StopOptions

字段名 类型 必填 说明
success (res: ApiResult) => void 停止并释放成功时回调。
fail (res: ApiResult) => void 停止失败时回调(较少出现)。
complete (res: ApiResult) => void 成功或失败都会回调一次。

playVibrate(options: PlayVibrateOptions)

功能:触发振动(单次约 500ms,具体以平台为准)。

参数 PlayVibrateOptions

字段名 类型 必填 说明
pattern number[] 振动节奏数组,单位毫秒,如 [静默, 振动, 静默, 振动, ...],当前实现会优先取首项时长,未传则默认 500。
repeat number pattern 的某一索引开始重复;-1 表示不重复,当前实现主要使用单次振动。
success (res: ApiResult) => void 振动调用成功时回调。
fail (res: ApiResult) => void 振动调用失败时回调。
complete (res: ApiResult) => void 成功或失败都会回调一次。

cancelVibrate(options: CancelVibrateOptions)

功能:取消振动(若平台支持)。iOS 系统级振动本身不可取消,实现上直接返回成功以保证接口一致性。

参数 CancelVibrateOptions

字段名 类型 必填 说明
success (res: ApiResult) => void 取消成功时回调。
fail (res: ApiResult) => void 取消失败时回调。
complete (res: ApiResult) => void 成功或失败都会回调一次。

参考

隐私、权限声明

1. 本插件需要申请的系统权限列表:

android.permission.VIBRATE

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率: