关于从android eclipse消费webservice编辑文本和按钮

时间:2012-05-23 13:56:29

标签: android eclipse web-services

我正在使用SOAP方法来使用Web服务。我必须在android eclipse上创建一个编辑文本框和一个按钮,它应该与此webservice类似。 在这里我想通过消费web服务在android eclipse中显示一些文本。即edittextbox应该从用户那里获得输入并准确打印上述web服务将要显示的内容。
我试过但它不起作用。如果有的话,任何人都可以让我知道想法或一些示例代码。

感谢宝贵的时间!..

1 个答案:

答案 0 :(得分:-1)

Manick,请指出您想要做的问题?你有一个edittext和一个按钮和webservice数据。当您键入edittext并单击按钮时,不应按用户输入列出Web服务数据。或其他任何东西。试试this

好的,让我们看看!

首先,您必须从here为Android平台下载轻量级且高效的SOAP客户端库,为您的项目下载KSOAP库。将此库添加到项目中。以下代码将帮助您 -

private Button button1;
private EditText editText1;

public void onClick(Bundle b){
    ........//type your other code here

    editText1 = (EditText) findViewById(R.id.editText1);        
    button1 = (EditText) findViewById(R.id.button1);
    button.setOnClickListener(this);

    ........//type your other code here
}

@Override
public void onClick(){
    SoapObject soapResponseObject = getSOAPResponse(editText1.getText());
    String result= soapResponseObject.getProperty(0).toString();
    //use result to into your code to your own way
    Toast.makeText(getApplicationContext(), result, Toast.LENGTH_SHORT).show();
}

//getSOAPResponse() method returns SOAP Response 
public SoapObject getSOAPResponse(String search){
    SoapObject soapObject = new SoapObject("http://www.webservicex.net", "GetBibleWordsbyKeyWord");
    soapObject.addProperty("BibleWords", search);
    SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER12);
    envelope.dotNet = true;
    envelope.setOutputSoapObject(soapObject);
    HttpTransportSE androidHttpTransport = new HttpTransportSE("http://www.webservicex.net/BibleWebservice.asmx?");
    try {
    androidHttpTransport.call("http://www.webserviceX.NET/GetBibleWordsbyKeyWord", envelope);//call the eb service Method
    } catch (Exception e) {
        e.printStackTrace();
    }
    return (SoapObject) envelope.response();
}

希望这会对你有所帮助。有趣!