首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Cordova Android如何在暂停时停止音频?

Cordova Android如何在暂停时停止音频?
EN

Stack Overflow用户
提问于 2016-07-21 21:22:22
回答 3查看 1K关注 0票数 2

我的一个同事用Cordova制作了一个交叉拼接游戏应用程序。现在他在度假,我的问题是,如果你按下主页键并离开应用程序,应用程序的背景音乐仍然在播放。还有,如果你打电话的话。

我试着把Android的<preference name="KeepRunning" value="false"/>和也设为true,但都没有用。

你知道该怎么做,来处理这个问题吗?

EN

回答 3

Stack Overflow用户

发布于 2016-07-21 23:13:17

我自己找到了一个答案:

我们必须设置<preference name="KeepRunning" value="true"/>,然后添加以下事件:

代码语言:javascript
运行
复制
function onLoad() {
    document.addEventListener("deviceready", onDeviceReady, false);
}

// device APIs are available
//
function onDeviceReady() {
    document.addEventListener("pause", onPause, false);
    document.addEventListener("resume", onResume, false);
}

function onPause() {
    // Handle the pause event
    // Set loudness to zero
}

function onResume() {
    // Handle the resume event
    // Set loudness to one

}

如果KeepRunning设置为false,则Cordova无法识别onPause/onResume事件。

票数 3
EN

Stack Overflow用户

发布于 2018-05-08 21:17:02

我的问题是,onPause事件战争在应用程序恢复后触发。-.-但我能想出一个有效的小技巧.至少对我来说:

代码语言:javascript
运行
复制
document.addEventListener("visibilitychange", function() {
        if (document.hidden) {
            //onPause stuff
        } else {
            //onResume stuff
        }

    }, false);

在Android上,当游戏最小化、设备关闭或标签切换时,这对我来说是有效的。

票数 2
EN

Stack Overflow用户

发布于 2016-07-21 23:13:27

使用科尔多瓦pause事件:

代码语言:javascript
运行
复制
document.addEventListener('pause', function() {
  // Tell your audio library to pause here
});

当用户重新打开应用程序时,将触发resume事件:

代码语言:javascript
运行
复制
document.addEventListener('resume', function() {
  // Tell your audio library to start playing again
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38505472

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档