屏幕自动锁定后继续运行应用程序 - Phonegap (Android/iOS)
Posted
技术标签:
【中文标题】屏幕自动锁定后继续运行应用程序 - Phonegap (Android/iOS)【英文标题】:Keep on running an app after the screen auto-locks - Phonegap (Android/iOS) 【发布时间】:2011-09-26 14:07:55 【问题描述】:我正在开发一个通过 GPS 跟踪用户运动(尤其是骑自行车)的应用程序,我意识到当屏幕自动锁定时,应用程序将停止运行(如果我没记错的话,我并不完全确定这一点)。
有没有办法防止手机自动锁定?或者作为替代方案,有没有办法(通过使用 Phonegap)在屏幕自动锁定后(作为某种后台进程)继续跟踪用户的移动?
谢谢。
【问题讨论】:
【参考方案1】:我很确定您需要为此使用Service
。 Services
可以由 Activities
启动以在后台运行 - 即您可以在 onPause()
的 Activity
方法中启动 Service
。
服务是在后台运行以执行的组件 长时间运行的操作或为远程进程执行工作。一种 服务不提供用户界面。例如,一个服务 当用户在不同的地方时,可能会在后台播放音乐 应用程序,或者它可能会通过网络获取数据而不会阻塞 用户与活动的交互。另一个组件,例如 活动,可以启动服务并让它按顺序运行或绑定到它 与之互动。
来源: http://developer.android.com/guide/topics/fundamentals.html
Google 在 Android 开发者网站上为开发者提供了使用 Services
的指南。这是直接链接:http://developer.android.com/guide/topics/fundamentals/services.html
【讨论】:
我们大多数人都知道我们可以使用服务来保持 android 应用程序在后台运行。但是如何从 Android 的 Phonegap SDK 启动服务...问题出在... :(【参考方案2】:您可以为此使用service。
【讨论】:
【参考方案3】:您可以添加一个启动服务的插件。向插件添加回调和方法以获取通知或检索信息。插件基本上是 Cordova/Phonegap 和 native 之间的通信层。
【讨论】:
以上是关于屏幕自动锁定后继续运行应用程序 - Phonegap (Android/iOS)的主要内容,如果未能解决你的问题,请参考以下文章
继续使用 MPMoviePlayerController 播放声音并锁定屏幕?