uniapp app版本:
最近在弄一个安卓APP,需要每隔几秒钟上报一次GPS位置,但发现当手机休眠后(屏幕熄灭后)APP不再运行,因此也不能上报GPS位置。 借助安卓的WakeLock机制,我们可以实现让APP在后台运行。实现代码如下: ``` var g_wakelock = null; //允许程序后台运行,以持续获取GPS位置 function wakeLock() { //Android var main = plus.android.runtimeMainActivity(); var Context = plus.android.importClass("android.content.Context"); var PowerManager = plus.android.importClass("android.os.PowerManager"); var pm = main.getSystemService(Context.POWER_SERVICE); g_wakelock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "ANY_NAME"); g_wakelock.acquire(); } //结束程序后台运行 function releaseWakeLock () { if(g_wakelock != null && g_wakelock.isHeld()) { g_wakelock.release(); g_wakelock = null; } ``` 在需要允许后台运行的时候调用wakeLock(),在希望停止的时候调用releaseWakeLock() 原文地址:https://ask.dcloud.net.cn/article/1273 [https://ask.dcloud.net.cn/article/1273](https://ask.dcloud.net.cn/article/1273)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。