1

背景:

我正在使用 Cordova 创建一个应在 iOS 和 Android 上运行的应用程序。我将 SenchaTouch 用于 UI,以便 UI 的代码库对于 iOS 和 android 都是相同的。我正在使用适用于 iOS 和 android 的 Cordova 的条形码扫描仪插件。扫描仪活动由 JavaScript 代码触发。在调用barcodeScanner的扫描功能后的JS代码中,我设置了15秒的超时,之后如果没有扫描到条形码,我会提醒用户。

这在 iOS 中运行良好。

问题:

我的问题是,一旦 ScannerActivity 启动 MainActivity(在 Cordova 中包含运行 JS 的 webview)就会进入后台并被 android 系统自动停止。这意味着我的 JS 代码不再运行。在暂停 ScannerActivity 但不停止 ScannerActivity 之后,我需要/想要通过 JS触发警报。为此,我需要一种方法来保持 MainActivity 在后台运行。

解决方案:

我整天都在网上搜索,到目前为止似乎没有办法做到这一点。但不知何故,我认为应该有办法做到这一点。

4

1 回答 1

0

您可以创建某种可以在每次需要时触发的后台运行的线程或服务。或者您将 ScannerActivity 集成到 MainActivity 中。

否则,未显示的活动被停止/暂停是标准行为,除非它是没有 ui 的服务/线程/活动。

于 2012-09-27T02:49:11.423 回答