1

我有一个 phonegap 应用程序,我想在后台任务中执行 Javascript 代码。当应用程序进入后台时,我开始执行一个 javascript 函数,该函数从 web 数据库中取出数据并将一些值发送到 web 服务,返回的数据可能会向用户切换推送通知。

我在 Stackoverflow 上找到了如何从 Objective-C 调用 javascript以及如何在iOS SDK 文档页面中实现长时间运行的后台任务,但我没有找到任何将两者结合起来的东西(我认为例如:当我调用通过 web 视图的 javascript 代码,当应用程序在后台时这个视图是否存在?)所以我想问一些更有经验的 iOS 开发人员这是否可能。

4

2 回答 2

1

我不认为它真的可能。Javascript 需要 UIwebview 才能运行(实时)并且必须对用户可见。当应用程序置于后台时,只允许运行少量任务 - webview 而不是其中一个。

您最好将数据发送到运行 cron-job 或类似任务的 Web 服务器,以通过苹果推送通知服务器发送推送通知 - 您也可以绕过此并使用http://urbanairship.com/之类的服务

于 2012-07-16T23:45:37.540 回答
1

我在 iOS 5+ 上对此进行了实验,这是可能的。我创建了一个小的 PhoneGap 插件来演示它是如何工作的。查看它,并查看自述文件以获取大部分信息。

https://github.com/jocull/phonegap-backgroundjs

于 2013-07-07T19:07:18.973 回答