마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 TTS 및 KeyDown 질문 입니다!

0 추천
package com.example.geonyoungstts;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.speech.tts.TextToSpeech;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import java.util.Locale;
// import android.view.KeyEvent;
import static android.media.audiofx.Visualizer.ERROR;

public class MainActivity extends AppCompatActivity {

    private TextToSpeech tts;
    private EditText editText;
    public Button button01;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        editText = findViewById(R.id.editText);
        button01 = findViewById(R.id.button01);

        tts = new TextToSpeech(this, new TextToSpeech.OnInitListener() {
            @Override
            public void onInit(int status) {
                if(status != ERROR) {
                    // 언어를 선택한다.
                    tts.setLanguage(Locale.KOREAN);
                }
            }
        });
        button01.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                // EditText 문장을 읽는다.
                tts.speak(editText.getText().toString(), TextToSpeech.QUEUE_FLUSH, null);
            }



        });

    }

   /* @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        switch (keyCode) {
            case KeyEvent.KEYCODE_HOME:
                tts.speak(editText.getText().toString(), TextToSpeech.QUEUE_FLUSH, null);
                return true;
        }
        return false;
    } */




    @Override
    protected void onDestroy() {
        super.onDestroy();
        // TTS 객체가 남아있다면 실행을 중지하고 메모리에서 제거한다.
        if(tts != null){
            tts.stop();
            tts.shutdown();
            tts = null;
        }
    }
}

 
현재 TTS 어플리케이션을 제작하여 동작까지 하는 상황입니다.
여기서 아두이노와 연결하여 어플리케이션을 이용하기 위해서
특정 Key 입력시 TTS 음성 출력을 동작하는 코딩을 하고싶은데
어디에 어떻게 코딩을 해야하는지 아무리 찾아봐도 전혀 감이 잡히지 않아 질문 드립니다.ㅠㅠ
kunyo1004 (120 포인트) 님이 2019년 9월 7일 질문

1개의 답변

0 추천
해야할 일을 먼저 정리부터 하세요.

1. 아두이노와 연결

2. 아두이노의 신호 받기

3. 아두이노의 특정 key 입력 신호 받기

4. 아두이노에서 특정 key 눌렀다는 신호 받으면 tts 실행

 

각각의 단계에 따라 하나씩 구글링하면서 진행하면 됩니다.

자신이 역사상 처음으로 안드로이드 - 아두이노 연결하려는 사람이 아니기 때문에, 답은 어딘가에 분명히 있습니다.
쎄미 (162,410 포인트) 님이 2019년 9월 9일 답변
...