我正在使用Parse SDK,有时候,在一个接一个地运行几个查询之后,所有对Parse的调用都被阻止了,我需要重启我的应用程序。 (记录:http://pastebin.com/qk6jvtBb)
通常单个操作涉及以下四个方面:保存对象;进行查询;保存安装;发送推送(我会保持代码真的具体)
...
pObject.saveEventually();
...
pQuery.getFirstInBackground(new GetCallback<ParseObject>()
...
pInstall.saveEventually(new SaveCallback()
...
pPush.sendInBackground(new SendCallback()
我想知道的是。我应该对所有人使用sendInBackground
还是对所有人使用saveEventually
,还是应该在单独的Runnable
中使用自己的Handler
?
答案 0 :(得分:0)
我建议如果所有操作都特定于一个任务,那么将它全部放在IntentService中,在后台不执行任何操作。
所以你的代码看起来像这样
MyClass.class
执行此操作的好处是您的解析操作一次一个地执行,按顺序执行,并在后台工作线程上执行。您不必担心同时运行的四/五个不同的解析sdk调用。
请记住,将IntentService放入清单中。使用Intent启动IntentService。完成解析sdk操作后,无需调用stopSelf()。您必须将服务绑定到您的活动,或发送广播以让活动或片段知道操作已完成。