日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android API开发之TTS开发之Android TTS简单使用

發布時間:2023/12/20 Android 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android API开发之TTS开发之Android TTS简单使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ?Android提供了自動朗讀支持。可以對指定文本內容進行朗讀,從而發生聲音;還允許把文本對應的音頻錄制成音頻文件,保存到本地,方便以后播放。Android的自動朗讀主要通過TextToSpeech來完成。

? ?構造器如:TextToSpeech(Context context, TextToSpeech.OnInitListennet listener);當創建TextToSpeech對象時,必須先提供一個OnInitListener監聽器——負責監聽TextToSpeech的初始化結果。

?

?

1.代碼

1.1.布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
? ? android:layout_width="match_parent"
? ? android:layout_height="match_parent"
? ? android:background="#FFFFFF"
? ? android:orientation="vertical">


? ? <TextView
? ? ? ? android:id="@+id/txt_content"
? ? ? ? android:layout_width="match_parent"
? ? ? ? android:layout_height="90dp"
? ? ? ? android:gravity="center"
? ? ? ? android:text="播放聲音"
? ? ? ? android:textColor="#339BFF"
? ? ? ? android:textSize="14sp" />


? ? <TextView
? ? ? ? android:id="@+id/txt_contents"
? ? ? ? android:layout_width="match_parent"
? ? ? ? android:layout_height="90dp"
? ? ? ? android:gravity="center"
? ? ? ? android:text="保存文本"
? ? ? ? android:textColor="#339BFF"
? ? ? ? android:textSize="14sp" />


?

</LinearLayout>

?

1.2.java代碼

TextView txt_content = (TextView) view.findViewById(R.id.txt_content);
? ? ? ? TextView txt_contents = (TextView) view.findViewById(R.id.txt_contents);


? ? ? ? textToSpeech = new TextToSpeech(MyFragment1.this.getContext(), new TextToSpeech.OnInitListener() {
? ? ? ? ? ? @Override
? ? ? ? ? ? public void onInit(int status) {
? ? ? ? ? ? ? ? if (status == textToSpeech.SUCCESS) {
? ? ? ? ? ? ? ? ? ? int result = textToSpeech.setLanguage(Locale.ENGLISH);
? ? ? ? ? ? ? ? ? ? if (result != TextToSpeech.LANG_COUNTRY_AVAILABLE
? ? ? ? ? ? ? ? ? ? ? ? ? ? && result != TextToSpeech.LANG_AVAILABLE){
? ? ? ? ? ? ? ? ? ? ? ? Toast.makeText(MyFragment1.this.getContext(), "TTS暫時不支持這種語音的朗讀!",
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Toast.LENGTH_SHORT).show();
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? });


? ? ? ? //播放語音
? ? ? ? txt_content.setOnClickListener(new View.OnClickListener() {
? ? ? ? ? ? @Override
? ? ? ? ? ? public void onClick(View v) {
? ? ? ? ? ? ? ? textToSpeech.speak(content, TextToSpeech.QUEUE_ADD, null);
? ? ? ? ? ? }
? ? ? ? });


? ? ? ? //保存語音
? ? ? ? txt_contents.setOnClickListener(new View.OnClickListener() {
? ? ? ? ? ? @Override
? ? ? ? ? ? public void onClick(View v) {
? ? ? ? ? ? ? ? HashMap<String, String> myHashRender = new HashMap<>();
? ? ? ? ? ? ? ? myHashRender.put(TextToSpeech.Engine.KEY_PARAM_UTTERANCE_ID, content);
? ? ? ? ? ? ? ? textToSpeech.synthesizeToFile(content, myHashRender,
? ? ? ? ? ? ? ? ? ? ? ? "/CDSP/pictures/sound.wav");
? ? ? ? ? ? ? ? Toast.makeText(MyFragment1.this.getContext(), "聲音記錄成功。", Toast.LENGTH_SHORT).show();
? ? ? ? ? ? }

? ? ? ? });

?

?

2.效果圖

?

3.核心代碼講解

?

使用TextToSpeech的步驟如下:

創建TextToSpeech對象,創建時傳入OnInitListener監聽器監聽示范創建成功。

設置TextToSpeech所使用語言國家選項,通過返回值判斷TTS是否支持該語言、國家選項。

調用speak()或synthesizeToFile方法。

關閉TTS,回收資源。

?

總結

以上是生活随笔為你收集整理的Android API开发之TTS开发之Android TTS简单使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。