Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Кашина_РМП_ЛБ16_3

.docx
Скачиваний:
0
Добавлен:
22.09.2026
Размер:
45 Кб
Скачать
☆

Министерство науки и высшего образования Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования

«Владимирский государственный университет

имени Александра Григорьевича и Николая Григорьевича Столетовых» (ВлГУ)

Колледж инновационных технологий и предпринимательства

КАФЕДРА ФИЗИКИ И ПРИКЛАДНОЙ МАТЕМАТИКИ

Лабораторная работа № 16_3

по МДК 01.03 «Разработка мобильных приложений»

на тему: «Преобразование текста в речь»

Выполнил

студент группы ИПсп-123

Кашина Д. А.

Принял

Красильщикова В.В.

Владимир, 2026 г.

Цель работы: получить практические навыки преобразования текста в речь в Android Studio.

Ход работы:

Разметка activity_main.xml

<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/main" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="32dp" android:text="Преобразовать" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.339" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/editTextText" /> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="152dp" android:text="Введите текст для преобразования" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.497" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> <EditText android:id="@+id/editTextText" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="20dp" android:ems="10" android:inputType="text" android:text="Name" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.437" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/textView" /> </androidx.constraintlayout.widget.ConstraintLayout>

Код программы ActivityMain.java

package com.example.laba16_3; import androidx.appcompat.app.AppCompatActivity; import android.os.Build; import android.os.Bundle; import android.speech.tts.TextToSpeech; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText; import java.util.Locale; public class MainActivity extends AppCompatActivity implements TextToSpeech.OnInitListener { Button speakBtn; EditText speakText; TextToSpeech textToSpeech; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Связываем элементы управления с кодом speakText = (EditText) findViewById(R.id.editTextText); speakBtn = (Button) findViewById(R.id.button); // Инициализируем объект TextToSpeech textToSpeech = new TextToSpeech(this, this); speakBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { texttoSpeak(); } }); } @Override public void onInit(int status) { if (status == TextToSpeech.SUCCESS) { // Устанавливаем русский язык int result = textToSpeech.setLanguage(new Locale("ru")); if (result == TextToSpeech.LANG_MISSING_DATA || result == TextToSpeech.LANG_NOT_SUPPORTED) { Log.e("Ошибка", "Русский язык не поддерживается на этом устройстве"); } } else { Log.e("Ошибка", "Не удалось инициализировать TextToSpeech"); } } private void texttoSpeak() { String text = speakText.getText().toString(); if ("".equals(text)) { text = "Введите текст для преобразования."; } // Проверка версии Android для выбора метода озвучки if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { textToSpeech.speak(text, TextToSpeech.QUEUE_FLUSH, null, null); } else { textToSpeech.speak(text, TextToSpeech.QUEUE_FLUSH, null); } } @Override public void onDestroy() { // Освобождаем ресурсы при закрытии приложения if (textToSpeech != null) { textToSpeech.stop(); textToSpeech.shutdown(); } super.onDestroy(); } }

Результат работы программы

Вывод: в ходе лабораторной работы были получены практические навыки преобразования текста в речь в Android Studio.