0
我現在使用ksoap2從Web服務獲取數據到我的Android手機。是否可以列出.asmx Web服務的方法?
我想獲取方法並將它們放入ArrayList
。它是可移動的嗎?
是否有可能獲得來自Web服務的URL
所有method
?
我現在使用ksoap2從Web服務獲取數據到我的Android手機。是否可以列出.asmx Web服務的方法?
我想獲取方法並將它們放入ArrayList
。它是可移動的嗎?
是否有可能獲得來自Web服務的URL
所有method
?
是的,您可以通過爲每個調用指定方法名稱來調用所有方法。 如:
public static String connect(String methodName, String[] args,String[] values) {
try {
SoapObject request = new SoapObject(YOUR_NAMESPACE, methodName);
int i = 0;
for (String s : args) {
PropertyInfo propInfo = new PropertyInfo();
propInfo.name = s;
propInfo.type = PropertyInfo.STRING_CLASS;
request.addProperty(propInfo, values[i]);
i++;
}
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(
YOUR_URL);
androidHttpTransport.call(YOUR_NAMESPACE + methodName, envelope);
SoapPrimitive resultsRequestSOAP = (SoapPrimitive) envelope
.getResponse(); // Receiving return string
String result = resultsRequestSOAP.toString();
if (result != null) {
return result;
}
return "";
} catch (Exception ex) {
ex.printStackTrace();
Log.d("Web Service Exception", ex.toString());
return "";
}
}
和使用輔助方法,如
public static String Get_ID(parameter) {
String[] args = new String[1];
String[] values = new String[1];
args[0] = "parameter";
values[0] = parameter;
String result = connect("Get_ID", args, values);
return result;
}
如果你有一個以上的方法,然後用repeate特定參數和方法名輔助方法。然後可以調用此輔助方法來獲取活動中的數據。
我已經更新了我的問題。你能看出它有可能嗎?非常感謝您的考慮。 –
是的,你可以。如果你想訪問每個方法,首先創建一個像上面提到的幫助方法。然後指定參數作爲參數。 – userDroid