gpt4 book ai didi

javascript - Cordova - 如何检测应用程序不再被积极使用 Android

转载 作者:行者123 更新时间:2023-11-29 20:55:06 25 4
gpt4 key购买 nike

好的,所以我的应用程序是在这里找到的手电筒/手电筒应用程序: https://github.com/Skelware/Fancy-Flashlight它使用在这里找到的 Cordova 插件:https://github.com/Skelware/Cordova-Flashlight

目前我只关心Android。简要解释一下这样的应用程序在 Android 上的工作方式:应用程序必须请求访问相机并且这是在后台完成的,加载相机需要一段时间,因此加载(和卸载)应该尽可能少尽可能。当一个应用可以访问相机时,没有其他应用可以请求访问。

当我的应用程序启动时,它会加载相机并执行它需要执行的操作。但是当用户切换到不同的应用程序或关闭我的应用程序时,相机仍然注册到我的应用程序导致所有其他应用程序无法使用相机。

虽然我更愿意在 JavaScript 端处理它,但在插件中本地处理它也可以。

Window 的卸载事件似乎在退出(即完全退出)应用程序时被触发,但它没有足够的时间释放相机。

Cordova 版本是 4.0,Android 版本是 4.4,尽管我怀疑这是否重要。

我该怎么办?

最佳答案

你的问题是应用程序在进入后台模式时进入休眠状态(用户按下主页按钮等)。这可以通过 Cordova background plugin 来阻止。通过调用

cordova.plugins.backgroundMode.enable();

你可以在获取相机时调用它,当你释放它时,你可以调用它的对应物

cordova.plugins.backgroundMode.disable();

这样你就不会在不必要的时候阻止 sleep ,因此你可以保护一些电池。

然后,你需要简单的绑定(bind)pause事件

document.addEventListener("pause", function() {
// Here call your release function and in the release function, you can call the disable for background mode
}, false);

关于javascript - Cordova - 如何检测应用程序不再被积极使用 Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27990068/

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