You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用ML Kit ASR接口返回3005错误提示service unavailable问题求助

错误原因及解决方案

核心问题

你出现该错误的直接原因是识别场景参数与语言设置不匹配:
你代码中通过putExtra(MLAsrConstants.SCENES, MLAsrConstants.SCENES_SHOPPING)设置了购物专属识别场景,该场景官方明确仅支持中文(zh-CN),但你同时将识别语言设置为了en-US,参数冲突直接触发服务不可用报错。

修复方案

根据你的业务需求二选一即可:

方案1:保留英文识别,删除购物场景配置

修改后代码如下:

// Create an Intent to set parameters.
val mSpeechRecognizerIntent = Intent(MLAsrConstants.ACTION_HMS_ASR_SPEECH)
// Use Intent for recognition parameter settings.
mSpeechRecognizerIntent 
// Set the language that can be recognized to English. If this parameter is not set, English is recognized by default. Example: "zh-CN": Chinese; "en-US": English; "fr-FR": French; "es-ES": Spanish; "de-DE": German; "it-IT": Italian; "ar": Arabic; "th_TH": Thai; "ms_MY": Malay; "fil_PH": Filipino.
.putExtra(MLAsrConstants.LANGUAGE, "en-US") // Set to return the recognition result along with the speech. If you ignore the setting, this mode is used by default. Options are as follows:
// MLAsrConstants.FEATURE_WORDFLUX: Recognizes and returns texts through onRecognizingResults.
// MLAsrConstants.FEATURE_ALLINONE: After the recognition is complete, texts are returned through onResults.
.putExtra(MLAsrConstants.FEATURE, MLAsrConstants.FEATURE_WORDFLUX)
// Start speech recognition.
mSpeechRecognizer.startRecognizing(mSpeechRecognizerIntent)

方案2:保留购物场景,将语言切换为中文

修改语言配置行即可:

.putExtra(MLAsrConstants.LANGUAGE, "zh-CN")

其他排查方向

如果修改参数后仍报错,可以按顺序排查以下配置:

  • 确认设备端HMS Core版本为最新版,旧版本可能存在服务兼容性问题
  • 确认AGC后台已经开通ML Kit语音识别服务,项目中引入的agconnect-services.json文件与AGC后台配置一致,应用签名配置和AGC后台录入的签名信息匹配
  • 确认设备网络正常,未使用代理、VPN或防火墙拦截华为服务相关请求

内容的提问来源于stack exchange,提问作者SpongeBob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 10:36:02