我正在构建一个Android应用程序,在我的第一个活动中,我调用了一个Web服务 AsyncTask(Virgil Dobjanschi设计模式)。
但是在通话结束后,我正在转向另一项活动:
ServiceHelper.CalcPoints(1,2);
Intent toSecond = new Intent(getApplicationContext(), SecondActivity.class);
startActivity(toSecond);
我不等待来自服务器的回调。
我想知道我是否有使用这种方式的风险?那是什么? 如果你建议我不使用它,请给我其他选择。
谢谢!
答案 0 :(得分:3)
如果您正在使用asyncTask,那么您必须知道它有三个方法,onPreExecute(),doInBackgroung(),onPostExecute()。你应该用onPreExecute方法调用你的布局,你也应该在这里启动一个进度条。然后在doInBackgroundMethod中你应该调用你的web服务。最后,onPostExecute方法应检查Web服务响应,如果它符合要求,则停止进度条并移至新活动,否则让控件保持在同一屏幕上,并显示错误服务器响应的Toast Message。
希望你明白:)
答案 1 :(得分:0)
这不安全。 当您开始另一项活动时,您当前的活动可以暂停,杀死等等。