Appcelerator背景工作

时间:2016-01-25 14:50:27

标签: appcelerator appcelerator-mobile appcelerator-titanium

我们正在appcelerator中开发一个app(iOS),其中包含同步联系功能。这会调用一个与服务器同步联系人的API。我想让它在应用程序的后台运行。它不应该让用户停在屏幕上。任何人都可以帮我吗?

2 个答案:

答案 0 :(得分:1)

如果您使用iOS后台,那么只有当应用程序进入后台并且操作系统设置了限制时 - 例如,如果处理时间过长,或者操作系统需要内存 - 它会将其关闭

我猜测(如果我错了,请纠正我)你想在应用程序运行时进行同步,但是不要通过冻结应用来破坏用户体验吗?

首先,知道对服务器的请求是异步的 - 只处理响应是在js线程上进行的 - 所以为了更好地利用你的单线程,我建议你查看下面的演示文稿:http://www.slideshare.net/ronaldtreur/titanium-making-the-most-of-your-single-thread

如果您真的想要一个后台线程来完成这项工作,那么目前您必须编写自己的本机模块才能完成这项工作。

此外,这在未来的版本中也是值得期待的:https://github.com/appcelerator/cspec-titanium-multithreading

答案 1 :(得分:0)

您可以使用background service

但请注意,此服务将在几分钟后停止