帮助了 AmazingCounters.com 位小伙伴

uniapp 如何在手机关屏后仍能正常运行、接收信息

复制代码
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)
复制代码

 

posted on   云的旋律  阅读(5012)  评论(0编辑  收藏  举报

编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决
历史上的今天:
2017-11-01 es6 关于map和for of的区别有哪些?

导航

统计

前端攻城狮分享群
点击右上角即可分享
微信分享提示