[window.speech在睡眠中在移动设备上的合成

问题描述 投票:0回答:1

我正在尝试构建一个开始运行的Web应用程序。因此,我的用户需要该应用在后台运行,以跟踪时间,地理位置并使用window.speechSynthesis.speak来宣布进度。

我需要它在电话进入睡眠状态时正常工作,我意识到这通常是浏览器(正确地)试图防止的事情。

我有以下代码,虽然我确实听到了beep,但除非手机未解锁and打开浏览器,否则我不会听到语音。没有这两个要求,有什么方法可以发表演讲?

function say(data) {
    beep().then(() => {
        window.speechSynthesis.speak(new SpeechSynthesisUtterance(data));
    });
}

const beeep =
    "data:audio/wav;base64,//uQRAAAAWMSLwUIYAAsYkXgoQ.....AAACU=";
function beep() {
    snd.src = beeep;
    return snd.play();
}

本机替代品在睡眠时会“讲话”,尽管我不知道它们是使用语音合成器还是只是播放声音文件。

javascript android ios text-to-speech
1个回答
0
投票

您不能,您应该通过推送通知发送事件,当应用程序在后台运行时可以触发此通知。Here is a basic example

© www.soinside.com 2019 - 2024. All rights reserved.