Android - 在AsyncTask中获得null响应

时间:2014-07-01 19:31:27

标签: java android android-asynctask

我自己编写了一个XMLParser来从xml获取某个字符串,在Java应用程序中测试它时一切正常,但是在android中执行它时会返回一个空值。我研究并发现我需要使用AsyncTask才能在单独的线程中调用Web服务。我做了,我仍然得到一个空值。这是代码

 private class AsyncTaskRunner extends AsyncTask<String, String, String> {

          private String resp;

          @Override
          protected String doInBackground(String... params) {
           //publishProgress("Sleeping..."); // Calls onProgressUpdate()
            XmlParser getP = new XmlParser();
            resp = getP.getClo();
           return resp;
          }
          @Override
          protected void onPostExecute(String result) {

           Log.d("Verify: ", "" + result);    
          }
}

我通过在对话框界面上进行OnClick来执行此操作: new AsyncTaskRunner()。execute(); 谢谢!

2 个答案:

答案 0 :(得分:0)

下面的代码显然返回null。

 XmlParser getP = new XmlParser();
        resp = getP.getClo();
       return resp;

XmlParser getP = new XmlParser();对象创建发生以及您尝试访问threr时只设置了没有值的对象

答案 1 :(得分:0)

在你的陈述中,XmlParser getP = new XmlParser();你只创建了一个XmlParser,你还没有将它设置为一个值。在你用它做某事之前它实际上是无用的。有关XmlParser的更多信息,请参阅此文档 - http://groovy.codehaus.org/api/groovy/util/XmlParser.html