应用程序在后台运行(Phonegap Cordova 3.0)

时间:2013-09-27 13:37:33

标签: android cordova

我正在使用Cordova 3.x开发一个应用程序,需要在按下HOME按钮时在后台运行,在Android上我在config.xml中有以下行:

<preference name="exit-on-suspend" value="false" />

这在我的Android模拟器上运行良好,当我按下HOME按钮时,应用程序在后台继续运行,但是当我在我的真实设备上测试时,应用程序仅在背景上运行的时间太短......

任何解决方案?谢谢! : - )

1 个答案:

答案 0 :(得分:1)

只有iOS支持偏好exit-on-suspend。根据PhoneGap开发人员的说法:

  

我们不久前就开始研究这个问题了,不幸的是因为   Android活动的性质,在暂停中退出各种各样   使用其他活动的功能。例如,当你   使用navigator.camera.getPicture,当相机活动启动时,   应用程序的主要活动已暂停,如果我们退出,该活动将退出   暂停。

可能的选择是收听pause事件,然后在应用发生时退出:

<script src="phonegap.js"></script>
<script>
  function onPause() {
    navigator.app.exitApp();
  };

  function onDeviceReady() {
    document.addEventListener("pause", onPause, false);
  };

  function onLoad() {
     document.addEventListener("deviceready", lbmon.onDeviceReady, false);
  };
</script>
</head>
<body onload="onLoad();">
</body>