2012-11-18 60 views
0

我正在构建一个Android应用程序,并在我的第一个活动中调用一个Web服务 AsyncTask(Virgil Dobjanschi设计模式)。调用Web服务异步

但电话换到另一个活动这样后再行:

ServiceHelper.CalcPoints(1,2); 
Intent toSecond = new Intent(getApplicationContext(), SecondActivity.class);  
startActivity(toSecond); 

我不等待来自服务器的回调。

我想知道我是否有使用这种方式的风险?和他们是什么? 如果你建议我不使用,请给我其他选项。

谢谢!

回答

3

如果您使用的是asyncTask,那么您一定知道它有三个方法onPreExecute(),doInBackgroung(),onPostExecute()。你应该在onPreExecute方法中调用你的布局,你也应该在这里启动一个进度条。然后在doInBackgroundMethod你应该打电话给你的网络服务。最后,onPostExecute方法,你应该检查Web服务响应,如果它达到要求,然后停止进度条并移动到新的活动,否则让控件保持在同一屏幕上,并且服务器响应错误。

希望你明白:)

+0

这是如何回答这个问题的? –

0

这是不安全的。 当你开始另一项活动时,你当前的活动可以暂停,杀死等。

+0

暂停或查杀活动不会影响AsyncTask生命周期 –