Android KSoap2:如何获取属性名称

我正在使用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; } 

我得到了完美的networking服务的回应。 响应的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; } 

现在,我可以很容易地获得财产的价值,但我也想获得名称属性(如NewsID,NewsSubject,NewsArtist,ModifiedDate)。 我如何得到财产的名称?

Solutions Collecting From Web of "Android KSoap2:如何获取属性名称"

在你回应的地方,你可以通过不同的属性来访问PropertyInfo。 我使用下面的设置来获取参数的名称和它们的值:

 //Inside your for loop PropertyInfo pi = new PropertyInfo(); resSoap.getPropertyInfo(i, pi); Log.d(TAG, pi.name + " : " + resSoap.getProperty(i).toString()); 

这将创build一个PropertyInfo对象,添加该对象中属性的信息,然后让您访问所有这些信息。 然后以“propertyname:propertyvalue”格式将其打印到LogCat中