需要使用其他异步任务更新来自异步任务中的一个Web服务的数据

时间:2015-06-29 08:38:00

标签: android web-services android-asynctask

我有一个Android活动,我使用AsyncTask调用Web服务,当数据收到成功时,我需要更新从Web服务收到的每一行或项目,来自另一个的数据网络服务。第二个Web服务基于来自第一个Web服务的数据进行调用。它是这样的:

protected String doInBackground(String... params) {
    try
    {
        String line="";
        //  String ur = "http://"+ServerDetails.hostServer+"/appservices.svc/TaskQuanityList?MaterialID=9336&ProjectNo=51&TaskNo=51." ;
        String ur = "http://"+ServerDetails.hostServer+"/appservices.svc/grn?po="+PONum;

        Log.d("URL", ur);

        // Replace it with your own WCF service path
        URL json = new URL(ur);
        URLConnection jc = json.openConnection();
        BufferedReader reader = new BufferedReader(new InputStreamReader(jc.getInputStream()));

        line = reader.readLine().toString();

        Log.d("LINE",line);
        line=line.replace("\\\"", "\"");
        line=line.substring(1, line.length()-1) ;
        JSONArray array=new JSONArray(line);

        for(int i=0; i < array.length(); i++) {
            JSONObject tmpJson=array.getJSONObject(i);
            lstdrpItem=new ArrayList<DropItem>();

            StoreAsync storeasc=new StoreAsync();another webservice
            storeasc.execute(tmpJson.getString("MaterialNo"));//-->Here I am calling second webservice

            ItmGrn=new GrnData(tmpJson.getString("lblRowIdField"),tmpJson.getString("MaterialName"),tmpJson.getString("MaterialNo"),tmpJson.getString("RecievedQty"),tmpJson.getString("qty"),tmpJson.getString("Conversion_Factor"),tmpJson.getString("GRN_NO"),tmpJson.getString("Good_Qty"),tmpJson.getString("Retain_Qty"),tmpJson.getString("Rejected_Qty"),tmpJson.getString("Challan_Qty"),tmpJson.getString("RecStore_No"),tmpJson.getString("Brand_Id"),lstdrpItem);
            lstGrn.add(ItmGrn);
            Log.d("Material Name",tmpJson.getString("MaterialName"));
        }
    }
    catch(Exception e)
    {
        Log.d("ERRROR--->",e.getMessage());
    }

    return  "" ;
}

现在的问题是,它继续执行循环迭代而不等待第二个Web服务。现在我的问题是如何让它等到第二个Web服务获取数据并继续循环中的剩余迭代?

0 个答案:

没有答案