Java Android-在AsyncTask中获取空响应

Java Android-在AsyncTask中获取空响应,java,android,android-asynctask,Java,Android,Android Asynctask,我自己编写了一个XMLParser来从xml中获取特定字符串,在Java应用程序中测试时一切正常,但在android中测试时返回空值。我研究发现,为了在单独的线程中调用web服务,我需要使用AsyncTask。我这样做了,但仍然得到一个空值。这是密码 private class AsyncTaskRunner extends AsyncTask<String, String, String> { private String resp;

我自己编写了一个XMLParser来从xml中获取特定字符串,在Java应用程序中测试时一切正常,但在android中测试时返回空值。我研究发现,为了在单独的线程中调用web服务,我需要使用AsyncTask。我这样做了,但仍然得到一个空值。这是密码

 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);    
          }
}
私有类AsyncTaskRunner扩展了AsyncTask{
私有字符串resp;
@凌驾
受保护的字符串doInBackground(字符串…参数){
//publishProgress(“睡眠…”);//调用onProgressUpdate()
XmlParser getP=新的XmlParser();
resp=getP.getClo();
返回响应;
}
@凌驾
受保护的void onPostExecute(字符串结果){
Log.d(“验证:”、“”+结果);
}
}
我通过在对话框界面上单击来执行此操作: 新建AsyncTaskRunner().execute();
谢谢

下面的代码显然返回null

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

因为
XmlParser getP=newxmlparser()对象创建正在进行,并且您尝试仅在没有设置值的情况下访问该对象,该对象在语句中,
XmlParser getP=new XmlParser()您只创建了一个XmlParser,还没有将其设置为值。除非你用它做点什么,否则它实际上是无用的。有关XmlParser的更多信息,请参阅本文档-

what?这没有任何意义。XmlPrser类拥有它所需要的一切。方法返回一个字符串。当在android上测试它时,它工作得很好。XmlParser工作正常,这是android中的一种功能。当我把同样的代码放在java应用程序上时,它工作得很好,但在android上不行。请小心命名您创建的类,如果您没有提到您创建了这些类,它可能会变得非常混乱。你应该给你的类起一个不同的名字。我不知道XmlParser是一个已经很有名的实现类lol,但我肯定会记住它。我的想法是,我创建了一个java应用程序来测试getClo是否正常工作,它的工作方式太好了,有些事情发生了,android不允许我调用webservice。我甚至在清单中做了internet许可,据我所知,调用web服务的方法是通过asynctask。我不知道如何解决这个问题。谢谢你到目前为止的帮助。你能包括错误和/或logcat输出吗?没有错误,我只是返回结果为空。它不应该为空