Phonegap TTS Plugin Android funktioniert nicht
Ich bin mit dem TTS Plugin von https://github.com/domaemon/org.apache.cordova.plugin.tts, Aber das plugin scheint nicht zu funktionieren. Es ist nicht einmal initialisieren.
Installiert das plugin wie unten (PHONEGAP 3.3 )
phonegap plugin add https://github.com/domaemon/org.apache.cordova.plugin.tts.git
phonegap build android
Hinzugefügt die folgenden in der phonegap config.xml
<gap:plugin name="org.apache.cordova.plugins.tts" value="org.apache.cordova.plugins.tts"/>
Hinzugefügt, den folgenden code in meine javascript -
window.plugins.tts.startup(startupWin, fail);
function startupWin(result) {
console.log("Startup win");
//When result is equal to STARTED we are ready to play
if (result == TTS.STARTED) {
window.plugins.tts.getLanguage(win, fail);
window.plugins.tts.speak("The text to speech service is ready");
window.plugins.tts.isLanguageAvailable("en_US", function() {
addLang("en_US", "English (American)");
}, fail);
window.plugins.tts.isLanguageAvailable("en_GB", function() {
addLang("en_GB", "English (UK)");
}, fail);
window.plugins.tts.isLanguageAvailable("fr", function() {
addLang("fr", "French");
}, fail);
window.plugins.tts.isLanguageAvailable("de", function() {
addLang("de", "German");
}, fail);
window.plugins.tts.isLanguageAvailable("it", function() {
addLang("it", "Italian");
}, fail);
window.plugins.tts.isLanguageAvailable("es", function() {
addLang("es", "Spanish");
}, fail);
}
}
function addLang(loc, lang) {
var langs = document.getElementById('langs');
var langOption = document.createElement("OPTION")
langOption.innerText = lang;
langOption.value = loc;
langs.options.add(langOption);
}
function changeLang() {
var yourSelect = document.getElementById('langs');
window.plugins.tts.setLanguage(yourSelect.options[yourSelect.selectedIndex].value, win, fail);
}
function win(result) {
console.log(result);
}
function fail(result) {
console.log("Error = " + result);
}
function speak() {
console.log("Speaking");
window.plugins.tts.speak("How are you");
}
Aber keiner von der Konsole die log-Meldungen werden angezeigt. Ich Teste das auf genymotion-emulator.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nach einigen kämpfen habe ich die TTS arbeiten. Aber es ist immer noch eine Frage, die ich hatte, um manuell zu beheben. Im folgenden sind die Schritte, um die TTS-Arbeiten
Installieren Sie das plugin wie unten.
Einmal installiert und gebaut. Fügen Sie dieses plugin, um die phonegap config.xml Datei. ( Wenn Sie die app mit sencha touch, der config.xml werden im root-Ordner. )
Dadurch wird das plugin hinzufügen, um die endgültige erstellen. Nun zu Beginn der TTS-Service und sprechen Sie einen text, verwenden Sie den folgenden Codeausschnitt.
Das Problem, das ich hatte, war der TTS.GESTARTET in der startupWin ist nicht definiert in der plugin. Ich habe gerade die Konstante, die den Wert und das plugin funktioniert perfekt.
Ergebnis == 2 GESTARTET oder nur einmal funktioniert. Wenn Sie erneut die Funktion aufrufen, kann es nicht wieder 2 oder GESTARTET (passiert bei mir). also besser nicht mit diesem Zustand in den Erfolg des startup.
JS:
HTML: