如何在后台运行android phonegap应用程序(关闭应用程序后)?

时间:2012-02-21 11:48:47

标签: javascript jquery cordova

我已经使用github(https://github.com/saileshmittal/phonegap-system-notification-plugin)的系统通知插件来获取android phonegap。我在index.html中使用了这段代码

我的代码是:

document.addEventListener("deviceready", onDeviceReady, false);


    function onDeviceReady() {
    var not_title   = 'Message';
    var not_text    = 'Zou dit werken?';
    var not_tText   = 'Message';

    navigator.systemNotification.onBackground();
    navigator.systemNotification.onForeground();
    navigator.systemNotification.createStatusBarNotification(not_title, not_text, not_tText); 
    }

我在前台和后台都获得了通知图标。但是,当在应用程序中单击按钮并连续调用我的 wcf 服务时,可以运行整个应用程序在后台运行。此外,即使在后台运行,我也需要获取警报。如何做到这一点?

navigator.systemNotification.onBackground():此行在后台运行应用程序,或者不是其他方式,仅用于在关闭应用程序后显示通知。

请提前指导我。

2 个答案:

答案 0 :(得分:4)

我使用PhoneGap创建了一个Android应用程序,当我按下主页按钮时,我的应用程序保持在后台(我的上次测试时间超过1小时)。但是当我启动其他App时,Android OS会杀死我的应用程序。

要启用此行为,您需要添加android权限:

<uses-permission android:name="android.permission.WAKE_LOCK" />到你的清单

您还需要添加:

<preference name="exit-on-suspend" value="false" />config.xml文件夹res/xml

我希望这篇文章可以帮到你:)

答案 1 :(得分:1)

根据phonegap文档,您无法在后台运行应用程序,js无法继续运行。通知能够工作的原因是因为他们使用本机系统发送通知。

为了让进程在后台运行,您需要创建一个使用本机操作系统的插件。