将 PhoneGap 应用程序带到前台
Posted
技术标签:
【中文标题】将 PhoneGap 应用程序带到前台【英文标题】:Bringing a PhoneGap app to the foreground 【发布时间】:2015-09-24 20:51:56 【问题描述】:我正在编写一个包含提醒组件的应用程序。一旦用户输入要提醒的时间,应用程序就会被发送到后台。 (我目前正在使用插件使应用程序在后台保持活动状态 (https://github.com/katzer/cordova-plugin-background-mode)。
该程序似乎在后台运行,但是,当需要触发警报时,它会安静地(并且在后台)运行。我希望它生成的“Snooze”/“Dismiss”对话框在前台呈现给用户。 提前致谢。【问题讨论】:
您需要在 ios 上发布 UILocalNotification。 好的,但我想知道这个问题是否有 html5/JS 解决方案(这就是我正在开发的)。 一旦应用程序在 iOS 上处于后台(顺便说一下,使用该插件,您不会获得 App Store 批准)您所能做的就是发布通知 - 我不使用 Cordova,但我想有人会写一个插件来做到这一点。 这很有趣。我正在为android做一个cordova应用程序,行为相反。我试图将应用程序保持在后台,但一旦触发警报,它就会进入前台。你用什么来安排/触发警报? ***.com/questions/32376247/… 【参考方案1】:该插件看起来是一个自定义的Service
,因此,从源代码中,您可以编辑KeepAliveTask.run()
方法,使用一个事件侦听器来侦听警报(广播接收器?)。
【讨论】:
【参考方案2】:你可以像这样使用https://github.com/caioladislau/cordova-toforeground插件:
cordova.plugins.backgroundMode.enable();
cordova.plugins.backgroundMode.onactivate = function()
setTimeout(function()
toForeground("MainActivity", "com.package.name", function()
console.log("foreground")
, function()
console.log("background still")
);
, 4000);
;
【讨论】:
只适用于安卓以上是关于将 PhoneGap 应用程序带到前台的主要内容,如果未能解决你的问题,请参考以下文章