5

Android 2.3 用の TTS ベースのアプリを開発しました。たとえば、最近のバージョンの Android (4.2.2) では、デフォルトでインストールされている場所にデフォルトの TTS 言語がないため、[設定] --> [言語と入力] --> [テキストから音声への出力] に移動して手動でダウンロードする必要があることに気付きました。 --> Google テキスト読み上げ --> 音声データのインストール

言語を自動的にインストールする方法はありますか?

4

1 に答える 1

9

言語を自動的にインストールする方法はありますか?

はい。ただし、ドキュメントに記載されているように、(ユーザーの同意なしに) 自動的に行われることはありません。

データのインストールはユーザーによって中断または拒否される可能性があるため、アプリケーションはそのインテントから戻ったときにインストールの成功を期待すべきではありません...

とにかく、次のような方法でインストールをトリガーできます

/**
 * Ask the current default engine to launch the matching INSTALL_TTS_DATA activity
 * so the required TTS files are properly installed.
 */
private void installVoiceData() {
    Intent intent = new Intent(TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA);
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    intent.setPackage("com.google.android.tts"/*replace with the package name of the target TTS engine*/);
    try {
        Log.v(TAG, "Installing voice data: " + intent.toUri(0));
        startActivity(intent);
    } catch (ActivityNotFoundException ex) {
        Log.e(TAG, "Failed to install TTS data, no acitivty found for " + intent + ")");
    }
}
于 2013-05-30T12:43:39.870 に答える