IBM Worklight - 如何在后台进程中使用Worklight

时间:2013-07-05 16:59:24

标签: background-process ibm-mobilefirst

我有一个应用程序即使在用户按下后退按钮后仍应连续运行。 它必须每半小时使用POST方法将一些数据发送到远程服务器中的数据库。即使用户按下后退按钮也应该发生这种情况,应用程序只应在移动设备关闭时停止。

虽然我已经设置了HTTP适配器以发送POST数据以及HTML文件以在启动时调用适配器程序,但我不知道如何使其成为后台或运行哪些代码以便每半年发送一次POST数据小时。

2 个答案:

答案 0 :(得分:0)

听起来你在Android上运行。

  1. Android中的预期行为是按“返回”按钮退出应用程序。
  2. 按住主屏幕按钮,即可移至后台。
  3. 所以,我不认为你按下后退按钮时应该这样做...或者你应该至少让用户选择退出或移动到后台(你可以通过使用覆盖后退按钮) WL.App.overrideBackButton)。

    那就是说,我不熟悉一种程序化的方法来移动到后台而不是退出(可能有一个现有的Cordova插件或其他方式来实现这一点)。

    实现此目的的另一种方法是使用Android后台服务,但是,Worklight在其Native API中没有支持来执行此操作。

    至于当Worklight应用程序在后台时会发生什么,我自己从未尝试过,所以我根本无法确定,但尝试使用WL.Client.setHeartBeatInterval保持与Worklight Server的连接并写入一些发送适配器请求的逻辑。看看这对你有用......


    我发现了这个: How to create plugin in phonegap to run the application in background?
    也许你可以将它按到你的Worklight项目中(如果上面的心跳方法不起作用的话)。

    有关在后台运行的更多信息:
    机器人:

    的iOS:

答案 1 :(得分:-1)

使用WL.App.overrideBackButton覆盖“后退”按钮。 删除该方法中的退出函数并将其留空(如果您希望后台进程在单击时不退出)