繁体   English   中英

如何从Web服务提取或解析值以在Android上登录?

[英]How to extract or parsing value from web service for login on Android?

我已经制作了.NET Web服务,到目前为止,我的Android应用程序可以与我的Web服务通信。 现在,我想制作一个登录表单,并且将我的Web服务中的值弄糊涂了。


这是我的登录代码:

// Login button Click Event
        btnLogin.setOnClickListener(new View.OnClickListener() {

            public void onClick(View view) {
                try
                {
                    inputUser = (EditText) findViewById(R.id.loginUser);
                    inputPassword = (EditText) findViewById(R.id.loginPassword);
                    String user = inputUser.getText().toString();
                    String password = inputPassword.getText().toString();
                    hasil = "START";

                    Panggil call = new Panggil();
                    call.user = user;
                    call.password = password;
                    call.join();
                    call.start();

                    while (hasil.equals("START")){

                        try{
                            Thread.sleep(10);
                        }

                        catch (Exception ex){

                        }
                    }

                    if (hasil != ""){
                        loginErrorMsg.setText("");
                        // Launch Dashboard Screen

                        // Send User Full Name to Dashboard Screen
                        Intent dashboard = new Intent(getApplicationContext(), DashboardActivity.class);
                        dashboard.putExtra("myname", hasil);

                        // Close all views before launching Dashboard
                        dashboard.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                        startActivity(dashboard);

                        // Close Login Screen
                        finish();
                    }
                    else{
                        // Error in login
                        loginErrorMsg.setText("Incorrect username/password");
                    }
                }

                catch(Exception ex)
                {
                    ad.setTitle("Error!");
                    ad.setMessage(ex.toString());
                    ad.show();
                }
            }
        });


从该登录代码中,我得到如下hasil的值:

anyType{ccduser=myusername; password=123456}


如何提取或解析该值并将其用于IF..ELSE..登录条件?

我将其作为答案。

我建议您使用JSON将数据从ws传递到客户端,再传递回客户端,互联网上有很多免费的.NET和android库。Android还集成了JSON解析器API

您也可以使用XML,但对于移动设备,我建议使用JSON,因为它更轻巧,并且可以找到很多库。.您还可以开发自己的数据封装格式,但是这需要一些时间,如果需要的话,将来要使您的客户端应用程序与其他服务器一起使用,或者使服务器将数据发送到其他客户端,您将不得不重新使用某些标准,例如JSON或XML。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM