package com.example.webservice; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; import org.ksoap2.serialization.SoapSerializationEnvelope; import org.ksoap2.transport.HttpTransportSE; 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; public class MainActivity extends Activity { private EditText phoneSecEditText; private TextView resultView; private Button queryButton; @Override public void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_main); phoneSecEditText = (EditText) findViewById(R.id.phone_sec); resultView = (TextView) findViewById(R.id.result_text); queryButton = (Button) findViewById(R.id.query_btn); queryButton.setOnClickListener( new OnClickListener() { @Override public void onClick(View v) { // 手机号码(段) String phoneSec = phoneSecEditText.getText().toString().trim(); // 简单判断用户输入的手机号码(段)是否合法 if ( "" .equals(phoneSec) || phoneSec.length() < 7 ) { // 给出错误提示 phoneSecEditText.setError( "您输入的手机号码(段)有误!" ); phoneSecEditText.requestFocus(); // 将显示查询结果的TextView清空 resultView.setText( "" ); return ; } // 查询手机号码(段)信息 getRemoteInfo(phoneSec); } }); } /** * 手机号段归属地查询 * * @param phoneSec * 手机号段 */ public void getRemoteInfo(String phoneSec) { // 命名空间 String nameSpace = "http://WebXml.com.cn/" ; // 调用的方法名称 String methodName = "getMobileCodeInfo" ; // EndPoint String endPoint = "http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx" ; // SOAP Action String soapAction = "http://WebXml.com.cn/getMobileCodeInfo" ; // 指定WebService的命名空间和调用的方法名 SoapObject rpc = new SoapObject(nameSpace, methodName); // 设置需调用WebService接口需要传入的两个参数mobileCode、userId rpc.addProperty( "mobileCode" , phoneSec); rpc.addProperty( "userId" , "" ); // 生成调用WebService方法的SOAP请求信息,并指定SOAP的版本 SoapSerializationEnvelope envelope = new SoapSerializationEnvelope( SoapEnvelope.VER10); envelope.bodyOut = rpc; // 设置是否调用的是dotNet开发的WebService envelope.dotNet = true ; // 等价于envelope.bodyOut = rpc; envelope.setOutputSoapObject(rpc); HttpTransportSE transport = new HttpTransportSE(endPoint); try { // 调用WebService transport.call(soapAction, envelope); } catch (Exception e) { e.printStackTrace(); } // 获取返回的数据 SoapObject object = (SoapObject) envelope.bodyIn; // 获取返回的结果 String result = object.getProperty( 0 ).toString(); // 将WebService返回的结果显示在TextView中 resultView.setText(result); } }


更多相关文章

  1. Android 银行卡手机号带空格格式
  2. 2010.12.26——— android 获得手机号码 和 IMEI号 等
  3. Android利用WebService查询手机号码归属地
  4. android获取手机号码以及imsi信息
  5. Android发送SOAP数据给服务器调用webservice,实现手机号归属地查
  6. Android复制手机号码到剪切板并调起打电话功能
  7. 芋道 Spring Boot JPA 入门(二)之基于方法名查询
  8. PHP以正则表达式验证手机号码
  9. mysql sql语句实现隐藏手机号码中间四位

随机推荐

  1. Android下setLatestEventInfo警告、Handl
  2. Android数据库SQLite使用详解一 : SQLite
  3. Android(安卓)Calendar一闪而过 无法创建
  4. android 之 handler
  5. xmlns:android="http://schemas.android.
  6. Android(安卓)4.0 SDK的离线方式安装
  7. Android(安卓)UI之对话框(dialog)
  8. 2011.06.29(2)——— android 完全退出
  9. Introduction to Model View Presenter o
  10. Android中的Environment.getExternalStor