如何使用基于SOAP的Web服务Android

如何使用基于SOAP的Web服务Android,第1张

概述我想在Android中使用基于SOAP的Web服务,但是我不知道如何使用基于SOAP的Web服务的概念.以前,我已经为简单的XMLWeb服务完成了XML解析,但是对基于SOAP的服务一无所知.您能告诉我如何在Android中使用基于SOAP的Web服务吗?解决方法:试试看,此代码适用于使用Ksoap的登录用户publiccl

我想在Android中使用基于SOAP的Web服务,但是我不知道如何使用基于SOAP的Web服务的概念.以前,我已经为简单的XML Web服务完成了XML解析,但是对基于SOAP的服务一无所知.您能告诉我如何在AndroID中使用基于SOAP的Web服务吗?

解决方法:

试试看,此代码适用于使用Ksoap的登录用户

public class Login extends Activity {    /** Called when the activity is first created. */    private static final String SOAP_ACTION = "http://tempuri.org/LoginUser";    private static final String METHOD_name = "LoginUser";    private static final String nameSPACE = "http://tempuri.org/";    private static final String URL = "http://"    private static final String TAG = "HELLO"    @OverrIDe    public voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.main);        button signin = (button) findVIEwByID(R.ID.regsubmitbtn);        signin.setonClickListener(new OnClickListener() {            public voID onClick(VIEw v) {                new StartLoginAsyncTask(yourclass.this).execute();            }        });    }    private class LoginTask extends AsyncTask<VoID, VoID, Boolean> {        private final ProgressDialog dialog =            new ProgressDialog(YourClass.this);        protected voID onPreExecute() {            this.dialog.setMessage("Logging in.........");            this.dialog.show();        }        protected Boolean doInBackground(final VoID unused) {            return Main.this.login(); //don't interact with the ui!        }        protected voID onPostExecute(final Boolean result) {            if (this.dialog.isShowing()) {                this.dialog.dismiss();            }            if (result.booleanValue()) {                //also show register success dialog            }        }    }    private String dologin() {        EditText etxt_user = (EditText)findVIEwByID(R.ID.emaileditlog);        String email_ID = etxt_user.getText().toString();        EditText etxt_password = (EditText)findVIEwByID(R.ID.pwdeditlog);        String password = etxt_password.getText().toString();        SoapObject request = new SoapObject(nameSPACE, METHOD_name);        request.addProperty("email", email);        request.addProperty("password", password);        SoapSerializationEnvelope soapEnvelope =            new SoapSerializationEnvelope(SoapEnvelope.VER11);        soapEnvelope.dotNet = true;        soapEnvelope.setoutputSoapObject(request);        httpTransportSE aht = new httpTransportSE(URL);        Pattern EMAIL_ADDRESS_PATTERN =            Pattern.compile("[a-zA-Z0-9\+\.\_\%\-\+]{1,256}" +                            "\@" +                            "[a-zA-Z0-9][a-zA-Z0-9\-]{0,64}" +                            "(" +                            "\." +                            "[a-zA-Z0-9][a-zA-Z0-9\-]{0,25}" +                            ")+");        Matcher matcher = EMAIL_ADDRESS_PATTERN.matcher(email_ID);        if (matcher.matches()) {            Log.v(TAG, "Your email ID is valID ="+email_ID);            //  System.out.println("Your email ID is valID ="+email);        } else {            //  System.out.println("enter valID email ID");            Log.v(TAG, "enter valID email ID" );        }        if (password != null) {            if (email_ID.equalsIgnoreCase("") || password.equalsIgnoreCase("")) {                System.out.println("FIElds should not be EMPTY");            }        }        SoapObject request = new SoapObject(nameSPACE_LOGIN, METHOD_name_LOGIN);        request.addProperty("email", email_ID);        request.addProperty("pwd", password);        SoapSerializationEnvelope soapEnvelope =            new SoapSerializationEnvelope(SoapEnvelope.VER11);        soapEnvelope.dotNet = true;        soapEnvelope.setoutputSoapObject(request);        httpTransportSE aht = new httpTransportSE(URL_LOGIN);        try {            aht.setXmlVersionTag("<?xml version=\"1.0\" enCoding=\"UTF-8\"?>");             aht.call(SOAP_ACTION_LOGIN, soapEnvelope);            SoapObject resultsRequestSOAP = (SoapObject) soapEnvelope.bodyIn;            Log.v("TAG", String.valueOf(resultsRequestSOAP));            Object response=(Object)soapEnvelope.getResponse();            temp=response.toString();        } catch (Exception e) {            e.printstacktrace();        }        return temp;    }}
总结

以上是内存溢出为你收集整理的如何使用基于SOAP的Web服务Android全部内容,希望文章能够帮你解决如何使用基于SOAP的Web服务Android所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1093763.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-28
下一篇2022-05-28

发表评论

登录后才能评论

评论列表(0条)

    保存