TTS(TextToSpeech) との連携

N2TTSが公開されて日本語が簡単にしゃべれるようになりました。
漢字などもうまく解釈して音声として出力できます。

Using Text-to-Speech | Android Developers 

TextToSpeech | Android Developers 

サンプル

TextToSpeechActivity.java | Android Developers 

非常にシンプルに利用できる。
該当アクティビティの構成を確認しておく。

構成

TextToSpeech.OnInitListenerをimplementsしている。

public class TTSActivity extends Activity implements TextToSpeech.OnInitListener {

    private TextToSpeech mTts;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mTts = new TextToSpeech(this, this);
        sayHello();
    }

    @Override
    public void onDestroy() {
        // shutdown() を忘れてはならない
        if (mTts != null) {
            mTts.stop();
            mTts.shutdown();
        }
        super.onDestroy();
    }

    public void onInit(int status) {
        if (status == TextToSpeech.SUCCESS) {
            int result = mTts.setLanguage(Locale.JAPAN);
            if (result == TextToSpeech.LANG_MISSING_DATA ||
                result == TextToSpeech.LANG_NOT_SUPPORTED) {
                // 言語が利用できない。
            } else {
                // 初期化成功
            }
        } else {
            // 初期化失敗
        }
    }

    private void sayHello() {
        mTts.speak("こんにちは", TextToSpeech.QUEUE_FLUSH, null);
    }

}