Android studio如何实现语音转文字功能
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要介绍了Android studio如何实现语音转文字功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、在科大讯飞的官网
千家信息网最后更新 2026年11月03日Android studio如何实现语音转文字功能
这篇文章主要介绍了Android studio如何实现语音转文字功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
一、在科大讯飞的官网上注册并下载SDK
1.首先去讯飞开放平台申请一个账号(https://www.xfyun.cn/),然后点击"控制台"进入新的页面,创建一个应用,找到"语音听写",下载相应的SDK。
文件解压后内容如下:
二、配置安卓项目
1.在android studio中新建一个空项目,将libs文件夹中的内容复制到安卓项目的libs文件夹下,其中msc.jar要右键添加Add As Library:
2.将assets文件夹拷贝到项目的main目录下,并在main目录下新建一个名为jniLibs的文件夹,将下载的libs文件夹中的两个子文件夹复制到jniLibs中:
3.在AndriodManifest.xml中添加以下权限:
4.在app目录下的build.gradle中添加以下代码:
sourceSets { main { jniLibs.srcDirs = ['libs'] } }5.修改布局文件activity_main.xml中的代码:
6.新建一个名为XunFeiCallbackListener的接口:
package com.example.myapplication;import com.iflytek.cloud.RecognizerResult;public interface XunFeiCallbackListener { void onFinish(RecognizerResult results);}7.新建一个名为XunFeiUtil的类:
package com.example.myapplication;import android.content.Context; import android.widget.Toast; import com.iflytek.cloud.RecognizerResult; import com.iflytek.cloud.SpeechConstant; import com.iflytek.cloud.SpeechError; import com.iflytek.cloud.SpeechUtility; import com.iflytek.cloud.ui.RecognizerDialog; import com.iflytek.cloud.ui.RecognizerDialogListener; import org.json.JSONArray; import org.json.JSONObject; import org.json.JSONTokener;public class XunFeiUtil { public static String appid = "自己的appid"; public static void initXunFei(Context context){ SpeechUtility.createUtility(context, SpeechConstant.APPID +"="+appid); } public static void startVoice(Context context, final XunFeiCallbackListener callbackListener) { RecognizerDialog dialog = new RecognizerDialog(context,null); dialog.setParameter(SpeechConstant.LANGUAGE, "zh_cn"); dialog.setParameter(SpeechConstant.ACCENT, "mandarin"); dialog.setParameter(SpeechConstant.ASR_PTT, "0"); dialog.setListener(new RecognizerDialogListener() { @Override public void onResult(RecognizerResult recognizerResult, boolean b) { callbackListener.onFinish(recognizerResult); } @Override public void onError(SpeechError speechError) { } }); dialog.show(); //Toast.makeText(this, "请开始说话", Toast.LENGTH_SHORT).show(); } public static String parseIatResult(String json) { StringBuffer ret = new StringBuffer(); try { JSONTokener tokener = new JSONTokener(json); JSONObject joResult = new JSONObject(tokener); JSONArray words = joResult.getJSONArray("ws"); for (int i = 0; i < words.length(); i++) { // 转写结果词,默认使用第一个结果 JSONArray items = words.getJSONObject(i).getJSONArray("cw"); JSONObject obj = items.getJSONObject(0); ret.append(obj.getString("w")); } } catch (Exception e) { e.printStackTrace(); } return ret.toString(); }}8.修改MainActivity:
package com.example.myapplication;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;import com.iflytek.cloud.RecognizerResult;import static com.example.myapplication.XunFeiUtil.parseIatResult;import static com.example.myapplication.XunFeiUtil.*;public class MainActivity extends AppCompatActivity implements View.OnClickListener{ private Button btn_click; private EditText mResultText; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initXunFei(this); btn_click = (Button) findViewById(R.id.btn_click); mResultText = ((EditText) findViewById(R.id.result)); btn_click.setOnClickListener(this); } @Override public void onClick(View v) { startVoice(this, new XunFeiCallbackListener() { @Override public void onFinish(RecognizerResult results) { String text = parseIatResult(results.getResultString()); // 自动填写地址 mResultText.append(text); } }); }}三、运行效果展示
按照以上操作进行修改,完成后运行项目,会出现语音开启失败,错误码为20006的错误,出错原因是android系统在非动态申请权限的情况下,默认是把麦克风权限是关闭了的,因此需要打开权限,可以在手机的权限中自己修改权限设置,成功后的界面如下:

感谢你能够认真阅读完这篇文章,希望小编分享的"Android studio如何实现语音转文字功能"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
文件
文件夹
权限
项目
语音
篇文章
目录
功能
文字
代码
内容
结果
错误
安卓
讯飞
运行
成功
两个
价值
兴趣
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
精品咖啡豆
中关村互联网 科技集团
科技创新与互联网经济
互联网科技的
与互联网科技公司
互联网科技有限公司 翻译
互联网科技大会案例
互联网科技创新企业排名
哈尔滨秒房互联网科技有限公司
互联网 科技馆
福州新华互联网科技学校 知乎
互联网系的金融科技公司
茂名市互联网科技产业园
厦门比较好的科技互联网公司
南平创想时代互联网科技有限公司
青岛科技大学互联网大赛研究生
坤平互联网科技
民营互联网公司国防科技
广州互联网高科技取餐柜
广西科技产业互联网是什么
手冲咖啡和咖啡机区别
广州大一互联网络科技有限公司
互联网的科技
致骋互联网科技
安徽鑫晟辉互联网科技
以后互联网后是啥科技
黑科技闪耀互联网之光
哈尔滨屹滨互联网科技有限公司
2021互联网科技公司排名
伍佰万互联网科技怎么赚钱