`

android 调用web serivce

阅读更多
package com.ws.activity;

import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.AndroidHttpTransport;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity {

	private static final String NAMESPACE = "";  
	// WebService地址  
	private static String URL = "****?wsdl";  
	private static final String METHOD_NAME = "getCampById";
	
	private EditText city;
	private long campid = 3;
	private Button searchbutton;
	private TextView result;
	/** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        city = (EditText)this.findViewById(R.id.city);
        searchbutton = (Button)this.findViewById(R.id.search);
        searchbutton.setOnClickListener(new searcherListener());
        result = (TextView)this.findViewById(R.id.result);
    }
    
    class searcherListener implements OnClickListener{
    	public void onClick(View veiw){
    		DisplayToast(city.getText().toString());
//    		if(city.getText().toString()!=null){
//	        	campid = Long.parseLong(city.getText().toString());
//	        	
//	        }
    		if(getWebService(campid)==null){
    			result.setText(getResources().getString(R.string.noresultTip));
    		}else{
    			
    			result.setText(getWebService(campid));
    			DisplayToast(getWebService(campid));
    		}
    	}
    }
    /**
     * 获取天气
     * @return
     */
    public static String getWebService(long city) {
		SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
		SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
				SoapEnvelope.VER11);
		envelope.dotNet = true;
//		request.setProperty(1, "");
		request.addProperty("camp_id",city);
		envelope.bodyOut = request;
		AndroidHttpTransport httptransport = new AndroidHttpTransport(URL);
		try {
			// web service请求Call方法的第一个参数一般为null,第2个参数就是在第3步创建的SoapSerializationEnvelope对象
			httptransport.call(null, envelope);
			// 得到返回结果
//			Object temp = envelope.getResult();
			SoapObject result = (SoapObject)envelope.getResponse();
			System.out.println(result.getProperty("campname"));
			System.out.println(result.getProperty("note"));
			return result.getProperty("campname").toString();
//			response = Boolean.parseBoolean(temp.toString());
		} catch (Exception ex) {
		}
		return null;
	}
    public void DisplayToast(String str){
		Toast.makeText(this,str,Toast.LENGTH_SHORT).show();
	}
}

以上验证程序需要访问网络,别忘了在AndroidManifest.xml加入 <uses-permission android:name="android.permission.INTERNET" />
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics