gpt4 book ai didi

cordova - Phonegap TTS 插件 Android 不工作

转载 作者:行者123 更新时间:2023-12-02 10:16:55 26 4
gpt4 key购买 nike

我正在使用 https://github.com/domaemon/org.apache.cordova.plugin.tts 中的 TTS 插件但该插件似乎不起作用。它甚至没有初始化。

安装了如下插件(PHONEGAP 3.3)

phonegap plugin add https://github.com/domaemon/org.apache.cordova.plugin.tts.git
phonegap build android

在phonegap config.xml中添加了以下内容

<gap:plugin name="org.apache.cordova.plugins.tts" value="org.apache.cordova.plugins.tts"/>

在我的 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");
}

但是没有显示任何控制台日志消息。我正在 genymotion 模拟器上测试这个。

最佳答案

经过一番努力,我的 TTS 可以正常工作了。但仍有一个问题我必须手动修复。以下是使 TTS 正常工作的步骤

安装如下插件。

phonegap plugin add https://github.com/domaemon/org.apache.cordova.plugin.tts.git
phonegap build android

安装并构建后。将此插件添加到phonegap config.xml 文件中。 (如果您使用 sencha touch 构建应用程序,则 config.xml 将位于根文件夹中。)

<gap:plugin name="org.apache.cordova.plugins.tts" value="org.apache.cordova.plugins.tts"/>

这会将插件添加到最终版本中。现在要启动 TTS 服务并说出一些文本,请使用以下代码片段。

navigator.tts.startup(startupWin, fail);
function startupWin(result) {
console.log("Startup win");
// When result is equal to STARTED we are ready to play
console.log("Result "+result);
//TTS.STARTED==2 use this once so is answered
if (result == 2) {
navigator.tts.getLanguage(win, fail);
navigator.tts.speak("The text to speech service is ready");
}
}

function win(result) {
console.log(result);
}

function fail(result) {
console.log("Error = " + result);
}

我遇到的问题是startupWin中的TTS.STARTED未在插件中定义。我刚刚使用了常量的值,并且该插件运行良好。

关于cordova - Phonegap TTS 插件 Android 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22367203/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com