@capacitor-community/speech-recognition

中文文档
7.0.1发布于 2025/06/09MITTypeScriptESM + CJS零依赖近 30 天下载 46.3万

语音识别的本地插件

中文使用文档
文档目录18 节
  1. 维护者
  2. 安装
  3. iOS系统
  4. 机器人
  5. 支持的方法
  6. 示例
  7. 可用( )
  8. 启动(...)
  9. 停止( )
  10. 获取支持语言( )
  11. 正在听( )
  12. 检查( )
  13. 请求( )
  14. 添加倾听器( “ 部分结果 ” , )
  15. 添加倾听器( “ listening state ” ,...)
  16. 删除所有收听器( )
  17. 接口
  18. 类型异名

语音识别插件

语音识别的电容社区插件.

维护者

维护者GitHub 图像社会
普里扬克帕特尔缩写@priyankpat (英语)
马特奥·帕多万诺牧师@mrba7ista (英语)

维持状况:积极维持

安装

用于 npm

npm install @capacitor-community/speech-recognition

用纱线

yarn add @capacitor-community/speech-recognition

同步本地文件

npx cap sync

iOS系统

iOS 需要为您的应用程序添加并填入以下用户描述 Info.plist数字 :

  • NSSpeechRecognitionUsageDescription (单位:千美元)Privacy - Speech Recognition Usage Description(中文(简体) )
  • NSMicrophoneUsageDescription (单位:千美元)Privacy - Microphone Usage Description(中文(简体) )

机器人

无需采取进一步行动.

支持的方法

示例

import { SpeechRecognition } from "@capacitor-community/speech-recognition";

SpeechRecognition.available();

SpeechRecognition.start({
  language: "en-US",
  maxResults: 2,
  prompt: "Say something",
  partialResults: true,
  popup: true,
});
// listen to partial results
SpeechRecognition.addListener("partialResults", (data: any) => {
  console.log("partialResults was fired", data.matches);
});

// stop listening partial results
SpeechRecognition.removeAllListeners();

SpeechRecognition.stop();

SpeechRecognition.getSupportedLanguages();

SpeechRecognition.checkPermissions();

SpeechRecognition.requestPermissions();

SpeechRecognition.hasPermission();

SpeechRecognition.requestPermission();

可用( )

available() => Promise<{ available: boolean; }>

这种方法将检查设备上是否有语音识别功能.

回返情况: Promise<{ available: boolean; }>


启动(...)

start(options?: UtteranceOptions | undefined) => Promise<{ matches?: string[]; }>

这种方法将开始倾听言论.

若为 partialResults 实值 true,函数直接响应而无结果 事件 partialResults 将发出每个部分结果,直到停止.

参数类型
optionsUtteranceOptions

回返情况: Promise<{ matches?: string[]; }>


停止( )

stop() => Promise<void>

这种方法将停止听话


获取支持语言( )

getSupportedLanguages() => Promise<{ languages: any[]; }>

这种方法会返回由语音识别器支持的语言列表.

在Android 13和较新的版本上没有.

回返情况: Promise<{ languages: any[]; }>


正在听( )

isListening() => Promise<{ listening: boolean; }>

这种方法将检查语音识别是否在监听 .

回返情况: Promise<{ listening: boolean; }>

自: 5.1.0 国家


检查( )

checkPermissions() => Promise<PermissionStatus>

检查语音识别权限.

回返情况: Promise<PermissionStatus>

自: 5.0.0 (单位:千美元)


请求( )

requestPermissions() => Promise<PermissionStatus>

请求语音识别许可.

回返情况: Promise<PermissionStatus>

自: 5.0.0 (单位:千美元)


添加倾听器( “ 部分结果 ” , )

addListener(eventName: 'partialResults', listenerFunc: (data: { matches: string[]; }) => void) => Promise<PluginListenerHandle>

当部分结果成真并收到结果时调用.

在Android上,如果弹出是真实的就行不通了.

提供了部分结果.

参数类型
eventName'partialResults'
listenerFunc(data: { matches: string[]; }) => void

回返情况: Promise<PluginListenerHandle>

自: 2.0.2 (中文(简体) )


添加倾听器( “ listening state ” ,...)

addListener(eventName: 'listeningState', listenerFunc: (data: { status: 'started' | 'stopped'; }) => void) => Promise<PluginListenerHandle>

听州变后召入.

参数类型
eventName'listeningState'
listenerFunc(data: { status: 'started' | 'stopped'; }) => void

回返情况: Promise<PluginListenerHandle>

自: 5.1.0 国家


删除所有收听器( )

removeAllListeners() => Promise<void>

删除此插件所附带的所有听众 .

自: 4.0.0 (单位:千美元)


接口

用途选项

Prop类型说明
languagestring密钥返回自 getSupportedLanguages()
maxResultsnumber返回的最大结果数( 5 为最大)
promptstring弹出时提示要显示的消息( 只有Android)
popupboolean聆听语音时显示弹出窗口( 只有Android)
partialResultsboolean如果找到, 返回部分结果

权限状态

Prop类型说明自兹
speechRecognitionPermissionState语音识别别名的授权状态 。 在Android上,它请求/检查记录 AUDIO权限 在iOS上,它要求/检查语音识别和麦克风权限.5.0.0 (单位:千美元)

插件听筒

Prop类型
remove() => Promise<void>

类型异名

权限状态

'prompt' | 'prompt-with-rationale' | 'granted' | 'denied'

版本与发布记录

@capacitor-community/speech-recognition 共发布 15 个版本,首次发布于 2020/06/25;过去 12 个月发布了 0 个版本。

版本发布日期距今
7.0.1latest2025/06/091.4 年前
7.0.02025/03/261.6 年前
6.0.12024/06/282 年前
6.0.02024/06/082 年前
5.1.02024/03/272 年前
5.0.0-dev.f11750d.1711357142dev2024/03/252 年前

其他发布通道:next → 5.0.0-0,dev → 5.0.0-dev.f11750d.1711357142。

关于 @capacitor-community/speech-recognition 的常见问题

@capacitor-community/speech-recognition 是什么?

语音识别的本地插件

如何安装 @capacitor-community/speech-recognition?

在项目目录运行 npm install @capacitor-community/speech-recognition,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@capacitor/core(>=7.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@capacitor-community/speech-recognition 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@capacitor-community/speech-recognition 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@capacitor-community/speech-recognition 可以商用吗?

@capacitor-community/speech-recognition 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@capacitor-community/speech-recognition 的下载量有多少?

根据 npm 官方下载统计,@capacitor-community/speech-recognition 在 2026/10/09 – 2026/11/07 这 30 天内被下载 463,085 次,日均约 15,436 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@capacitor-community/speech-recognition 还在维护吗?

最新版本 7.0.1 发布于 2025/06/09(1.4 年前);至今共发布 15 个版本,其中过去 12 个月发布了 0 个;首次发布于 2020/06/25。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。