AndroidStudio里使用google TTS引擎播放声音

Android TTS播报音频并且配合AudioManager压低其他音频声音 TTS播放音频,AudioManager 和 AudioFocusManager 控制音频播放音量和焦点。 阅读详情

注:红米可以安装设置google TTS,但oppo的ColorOS15却无法设置第三方TTS。所以建议直接使用系统默认TTS引擎(代码不变)

1.首先下载google TTS安装包,在你的安卓手机上进行安装。

2.将手机的默认文字播放引擎设置为google TTS。以红米手机为例:设置-更多设置-语言与输入法-文字转语音输出

3.在AndroidManifest.xml中申请权限(必需有,不然放不出声音来)

    <queries>
        <intent>
            <action android:name="android.intent.action.TTS_SERVICE" />
        </intent>
    </queries>

(这段代码可放在application标签前面)

4.在代码中播放声音(包括了兼容性验证、音量设定)

package com.example.train;

import android.os.Bundle;
import android.view.View;
import android.widget.*;
import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;
import android.speech.tts.TextToSpeech;
import java.util.Locale;
import android.util.Log;
import android.content.Context;
import android.media.AudioManager;

public class MainActivity extends AppCompatActivity {

    android.widget.Button button = null;
    private TextToSpeech tts;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        EdgeToEdge.enable(this);
        setContentView(R.layout.activity_main);
        ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> {
            Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
            v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);

            return insets;
        });

        tts = new TextToSpeech(this, new TextToSpeech.OnInitListener() {
            @Override
            public void onInit(int status) {
                if (status == TextToSpeech.SUCCESS) {
                    int result = tts.setLanguage(Locale.CHINA); // 设置中文
                    if (result == TextToSpeech.LANG_MISSING_DATA
                            || result == TextToSpeech.LANG_NOT_SUPPORTED) {
                        Log.e("TTS", "中文语言包不可用");
                    }
                    else{
                        AudioManager am = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
                        am.setStreamVolume(AudioManager.STREAM_MUSIC, (int)(am.getStreamMaxVolume(AudioManager.STREAM_MUSIC) * 0.8), 0);
                        EditText edit = findViewById(R.id.editTextText);
                        edit.setText("语音初始化成功");
                    }
                }
            }
        });

        button = findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                EditText edit = findViewById(R.id.editTextText);
                //Toast.makeText(MainActivity.this,edit.getText() , Toast.LENGTH_SHORT).show();
                tts.setPitch(1.2f);// 音高调节(0.5-2.0,默认1.0)
                tts.setSpeechRate(0.9f);// 语速调节(0.5-2.0,默认1.0)
                tts.speak(edit.getText(), TextToSpeech.QUEUE_FLUSH, null, null);
            }
        });
    }
}

内置googletts并且内置中文语音包 先上补丁 diff --git a/frameworks/base/core/java/android/speech/tts/TextToSpeech.java b/frameworks/base/core/java/android/speech/tts/TextToSpeech.java index 01562b3..99e7598 100644 --- a/frameworks/base/core/java/android/speech/tts/TextToSpeech.java +++ b/fra 阅读详情

相关推荐

Android系统Google TTS 语音数据包安装步骤

Android5.1 安装tts并能发出声音步骤 打开tts安装脚本工具文件夹,工具下载的地址: https://download.youkuaiyun.com/download/u012944110/21051608 运行脚本 install_tts.bat 脚本,按回车根据提示输入 设备ip 如下: 看到请按任意键继续 ,说明tts语音已经安装成功 2 验证步骤如下: 打开系统设置,找到语言和输入法选项 然后找到文字转语音tts 输出 首选引擎选择Google文字转语音引擎 常规中选择 收听示例,

畏惧困难就是毁灭梦想 2万+

Android API开发之TTS开发之Android TTS初涉

  TTS (从文本到语音(TextToSpeech)) TTS是Text To Speech的缩写,即“从文本到语音”,是人机对话的一部分,让机器能够说话。 它是同时运用语言学和心理学的杰出之作,在内置芯片的支持之下,通过神经网络的设计,把文字智能地转化为自然语音流。TTS技术对文本文件进行实时转换,转换时间之短可以秒计算。在其特有智能语音控制器作用下,文本输出的语音音律流畅,使得听者在听...

听海的博客 1118

Android设备Google TTS语音数据包快速安装与验证指南

本文详细介绍了在Android设备上快速安装与验证Google TTS语音数据包的完整指南。从环境检查到自动化脚本安装,再到手动安装方案,帮助开发者解决语音合成功能缺失的问题。特别适用于国产手机和国际版系统切换时的常见问题,提升语音应用的兼容性和稳定性。

weixin_29305337的博客 280

谷歌tts android手机自带引擎,自动下载android TTS引擎

Is there a way to install a language automatically?是的,但这不会自动发生(未经用户同意),如docs所述:Since the installation of the data can be interrupted or declined by the user,the application shouldn’t expect successful...

weixin_35340730的博客 2918

Android 10.0 内置google tts语音包功能实现

在10.0的产品开发中,在gms的相关项目对于文字转语音包功能不是内置功能,需要自己下载google的tts语音包,然后内置,在设置 google tts语音包apk作为默认的tts语音引擎功能,接下来分析实现这个功能

安卓兼职framework和app工程师的博客 3100

Android 11.0 内置google tts语音包功能实现

在11.0的系统rom产品开发中,在gms的相关项目对于文字转语音包功能不是内置功能,需要自己下载google的tts语音包,然后内置,在设置 google tts语音包apk作为默认的tts语音引擎功能,接下来分析实现这个功能

安卓兼职framework和app工程师的博客 2223

Android调用自带TTS文本转语音引擎实现离线语音合成

只要手机带有语音助手的话一般就会存在中文语音引擎,如果没有的话需要额外下载中文的语音引擎,不然不支持中文。 开工,第一步,初始化: private TextToSpeech tts; tts = new TextToSpeech(this, new TextToSpeech.OnInitListener() { @Override public void onInit(i...

侠亦狐的博客 6766

Android系统Google TTS 语音数据包(支持中文等15种语言)

语音包里面包含语言如下: E 英文 F 法语 G 德语 I 印尼语 J 日本语 K 韩语 L 泰语 P 葡萄牙语 R 俄语 S 简体中文 T 香港-繁体中文 V 越南语 a 西班牙语-西班牙 t 土耳其语 w 繁体中文-台湾 脚本的操作步骤如下: 1.解压文件后 在文件目录输入cmd 回车打开dos界面 2运行install_tts.bat脚本,然后根据提示输入设备ip 按回车键 脚本自动执行

Android文字转语音引擎(TTS)简单比较及下载

目前国内Android系统自带语音引擎包括华为小米等居然都是不支持中文语音功能,以下是在网上找到的谷歌、科大讯飞和百度的纯语音引擎apk,没有启动界面,安装后在设置中能找到。不知为什么这些引擎在官网上都是找不到的。 百度网盘下载地址 密码:3si0 简单比较 com.svox.pico 系统自带不支持中文语音 com.svox.classic 搜svox搜到的,和上面类似不支...

yingchengyou的博客 15万+

别再只接个放大器了!压电传感器测量电路(电压/电荷放大器)的5个实战配置要点

本文深入解析压电传感器测量电路中的5个关键实战配置要点,包括电缆长度选择、输入阻抗匹配、过载保护设计、低频噪声抑制及放大器选型策略。特别针对电压放大器和电荷放大器的应用场景差异提供工程实践建议,帮助工程师有效解决信号失真、噪声干扰等常见问题,提升测量精度和系统可靠性。

weixin_26869081的博客 302

SNAP实战:哨兵1 SLC数据预处理全流程详解(附避坑指南)

本文详细解析了使用SNAP软件处理哨兵1号SLC数据的完整预处理流程。从轨道精校正、辐射定标到多视与斑点滤波,再到地理编码,文章提供了清晰的操作步骤与核心逻辑,并重点分享了实践中的常见“坑”与解决方案,旨在帮助用户高效、准确地完成SAR数据预处理。

7up55的博客 1027

Android TTS学习——TTS初体验

一.基础知识TextToSpeech简称 TTS,称为语音合成,是Android 从1.6版本开始支持的新功能,能将所指定的文本转成不同语言音频输出。在具体介绍前我们先来看下Adnroid系统带的TTS设置界面,点击Settings->Speech synthesis,如下图所示:图 1 Android TTS设置界面    当点击“Listen to an example”时,会发出“This is an example of speech synthesis in English.”,如果没有安装TTS

ichliebephone的专栏 2万+

cmw500 lte非信令测试_WiFi信令测试在研发过程中的作用

  1、关于信令测试的故事  2016年的某天,某著名网络产品公司技术负责人致电寻求技术支持:我们的无线路由器遇到了一个困惑:我们某款路由器应用于实际WiFi网络中时,WiFi终端接入非常困难。但是我们使用测试工具检测此路由器,它的所有物理射频指标都非常优异。不知道是为什么?  我来到了测试现场看到:WiFi路由器受控于芯片公司的测试工具,其WiFi发射机指标在非信令测试仪上显示:无论功率、EVM...

weixin_39662263的博客 3924

android tts 语音合成

快速完成文字转语音播放

yuehua_zhang的博客 1736

CNN卷积神经网络手写数字识别实例及代码详解

本文的代码来自githup的Deep Learning的toolbox,是用Matlab实现的。感谢该toolbox的作者付出和分享。 我在应该该代码进行训练时,出现一些报错,如expand函数应用不对,flipall函数未定义等问题,对这些问题进行了修正,完成网络训练和验证。 本文mnist_uint8.mat的获取可以参照我的另一篇博客:MNIST数据库处理--matlab生成mnist_

VivienFu的专栏 6万+

Cursor+Playwright MCP实现UI全自动化,告别繁琐元素定位!

摘要:本文探讨了利用Cursor和PlaywrightMCP实现UI自动化测试的创新方法。通过将AI编程助手与浏览器自动化技术结合,解决了传统UI自动化测试中元素定位繁琐、维护成本高等痛点。文章详细介绍了项目架构设计、AI使用技巧(包括精准提问和编写.mdc规则文档),以及如何实现自然语言测试用例到自动化脚本的转换。最终实现了测试人员只需输入手工测试步骤,AI即可自动生成完整测试代码的智能化流程,并展望了通过Excel表格一键生成测试用例的未来发展方向,为UI自动化测试提供了高效解决方案。

baidu_29774881的博客 2793

Delphi 安卓11 中文语音合成(中文朗读)注意内容

很早之前,使用DELPHI做了一个安卓中文语音合成(中文朗读)的APP,前几天,有朋友说到,这个APP在安卓11下不能完成中文朗读,在低版本的安卓手机中一切正常。怀疑这个情况与安卓版本有关,查了一些资料,根据google官方开发文档说明,在android11系统下对于使用到TTS功能的应用,需要修改应用中的。其中,红框部分就是我们这次增加上的内容。完成这些后,回到项目,重新编译。也就是说,如果需要在安卓11下使用TTS(语音功能),就需要在。

tanqth的专栏 1万+

【GlobalMapper精品教程】084:tif(tfw)、jpg(jgw)、png(pgw)的区别与联系

摘要:本文介绍了TFW、JGW、PGW等地理参考文件的基本原理和应用。这些文件通过简单的文本格式存储栅格图像的地理坐标信息,适用于平面坐标系下的GIS数据处理。文章详细说明了文件各行的含义,并提供了在ArcGIS和Globalmapper中生成这些文件的具体操作步骤,包括导出TIFF、JPG、PNG格式时勾选生成对应坐标文件的选项。这些文件虽然简单易用,但仅适用于平面坐标系,且功能相对有限。配套视频教程提供了更详细的操作演示。

智慧空间实验室 2400

Android TTS语音播报实践

本文总结了TTS的现状及发展,并介绍了移动端实现TTS的几种方式以及如何系统提供的TextToSpeech API、系统API的局限、如何做兼容性等。

bugyinyin的博客 6217

网表导入virtuoso后发现pg pin忘记connect_pg_net/globalNetConnect怎么办?

数模混合项目中经常需要一些需要到virtuoso去连接的线,比如IO上的pg和一些信号线,除了在pr工作中设置skip route之外还需要做好net的赋值,告诉工具虽然我没在物理上有连接,但是实际上应该连什么net,这部分提现在网表里。在Default Net Name中也填写net name,因为这个net需要做global操作,即在顶层定义这个net,所以需要在net name后加个!打开schematic,删除指定cell pin所接net的label。

m0_61544122的博客 968

OpenClaw 钉钉和飞书集成方案研究 & OpenClaw 研究分析报告

OpenClaw(原名 Clawdbot,曾用名 Moltbot)是一款开源的个人 AI 智能体,采用"本地优先"设计理念。与传统聊天机器人不同,OpenClaw 具备真正的系统级执行能力,能够实际操作用户的计算机系统,完成各种实际任务。核心优势本地部署:所有数据存储在用户本地设备,隐私零泄露系统级执行:具备完整的系统访问权限,可执行文件操作、命令运行等全渠道交互:支持多种即时通讯平台作为交互界面开源透明:MIT 许可证,代码完全开放,社区驱动开发应用场景个人助理:日程管理、任务提醒、邮件处理。

AI天才研究院 2340

Android Studio开发安卓app TTS文字转语音功能 android11系统无法调用TTS问题记录

Android Studio开发安卓app TTS文字转语音功能 android11系统无法调用TTS问题记录

qq445829096的博客 1344

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Android系统深度定制:内置Google TTS语音引擎并设为默认的终极指南

文件路径xml复制-- 在<string>节点区域添加 -->运行 HTML配置要点使用非翻译资源(translatable="false")严格匹配目标APK包名确保资源ID唯一性。

郑敏 3385

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

三步实现Android系统级集成:预装Google TTS + 默认引擎设置 + 语音包预缓存方案

本文介绍了在定制Android系统中预装Google TTS语音引擎的完整方案。首先通过修改系统框架代码强制将Google TTS设为默认引擎,再通过脚本实现语音包预缓存。方案包含三个关键步骤:预装APK、修改SettingsProvider源码配置默认引擎、以及使用Shell脚本自动部署语音包。最后提供了测试方法验证实现效果,确保系统首次启动即可使用完整的语音服务。该方案适用于ROM开发者,能显著提升设备的开箱即用体验。

嵌入式软件工程师的博客 1552

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Android 11使用TextToSpeech实现文字转换语音报错speak failed: not bound to TTS engine

如果出现speak failed: not bound to TTS engine并且是Android 11。在AndroidManifest.xml中加入。

zhizhuodewo6的博客 1329

android google tts如何不联网内部预置多国语音包

本文介绍了一种为未通过GMS认证设备预置Google TTS语音包的方法。通过反编译Google TTS APK获取语音包下载链接,下载所需语音资源后重新打包,并通过系统签名将其集成到Android系统中。该方法解决了非认证设备无法下载多国语言包的问题,详细步骤包括APK反编译、语音包获取与预置、重新打包及系统签名等流程。最终实现未认证设备也能使用多国语言TTS功能,为开发者提供了一种替代解决方案。

通信侠的博客 2837
上一篇: AndroidStudio打包APK
下一篇: AndroidStudio前台服务示例程序
大狗狗
博客等级 码龄19年 51粉丝 100原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值