我正在使用KSoap2为我的
Android应用程序调用Web服务.我使用以下代码来调用Web服务.
SoapObject request = new SoapObject(NAMESPACE,METHOD_NAME); request.addProperty("PageSize",20); request.addProperty("PageIndex",currentPage); SoapSerializationEnvelope soapEnvelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); soapEnvelope.dotNet = true; soapEnvelope.setOutputSoapObject(request); HttpTransportSE aht = new HttpTransportSE(URL); try { aht.call(SOAP_ACTION,soapEnvelope); SoapObject result = (SoapObject) soapEnvelope.getResponse(); Log.d("resBundle",String.valueOf(resBundle)); int elementCount = resSoap.getPropertyCount(); for(int i = 0;i<elementCount;i++){ /////////////////////how to get the property name here//////////////// } }catch (Exception e) { e.printStackTrace(); return null; }
我完全得到了网络服务的回应.响应的String.valueOf如下:
anyType{NewsID=2186; NewsSubject=Lil Wayne Shows Up to Heat Game With Mystery Chick & Drake; NewsDetail=Looks like Weezy found him a main chick! Lil Wayne showed off his mystery girl yet again,this time at the Miami Heat Eastern Conference Finals game. Wanye looked proud to be with his girl while he kept his arm around her for most of the game. Drake was also in attendance with Wanye and it looks like he was having a great time cheering on the Heat as they beat the Bulls in overtime. Chad Ochocinco was also spotted enjoying the game,but Evelyn was no where to be seen. Check out more pics from the Miami game:; NewsArtist=494; ModifiedDate=2011-05-26T12:03:04.567+01:00; CreateDate=26 May,2011 12:03PM; ImageName=26052011120304.jpg; ImageAlt=anyType{}; ShortNewsDetail=Looks like Weezy found him a main chick! Lil Wayne showed off his mystery girl y; }
现在,我可以轻松地轻松获取属性的值,但我也想获取name属性(例如,NewsID,NewsSubject,NewsArtist,ModifiedDate).我如何获得该物业的名称?
解决方法
在您通过响应循环的位置,您可以从difrent属性访问PropertyInfo.我使用以下设置来获取参数的名称以及它们的值:
//Inside your for loop PropertyInfo pi = new PropertyInfo(); resSoap.getPropertyInfo(i,pi); Log.d(TAG,pi.name + " : " + resSoap.getProperty(i).toString());
这将创建一个PropertyInfo对象,从该对象中的属性添加信息,然后允许您访问所有这些信息.然后以“propertyname:propertyvalue”格式将其打印到LogCat