Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/188.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从web服务中提取或解析值以便在Android上登录?_Android_Web Services - Fatal编程技术网

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

如何从web服务中提取或解析值以便在Android上登录?,android,web-services,Android,Web Services,我已经制作了.NETWeb服务,到目前为止,我的android应用程序可以与我的web服务进行通信。现在,我想创建一个登录表单,但我对web服务中的值感到困惑。 这是我的登录代码: // Login button Click Event btnLogin.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { try

我已经制作了.NETWeb服务,到目前为止,我的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..
条件?

我将把它作为一个答案

我建议你使用它来将数据从ws传递到客户端和客户端,互联网上有很多免费的.NET和android库。。也整合


您也可以使用XML,但对于移动设备,我建议使用XML和JSON,因为它更轻,而且您可以找到很多库。。您也可以开发自己的数据封装格式,但这需要一些时间,如果您将来想让您的客户端应用程序与其他服务器或您的服务器一起工作以向其他客户端发送数据,您必须返回并使用一些标准,如JSON或XML。

永远不要使用==,使用
someString.equals比较字符串(另一个字符串)
,而不是
hasil==“START”
do
hasil.equals(“START”)
我建议您使用JSON将数据从ws传递到客户端和客户端,互联网上有很多免费的.NET和android库。android还集成了JSON解析器API
hasil==“START”
这是不正确的,你应该使用
hasil.equals(“开始”)
而不是你的。当你比较
字符串时,你必须使用
equals()
,而不是
=
这不是很好,安全等等。@Austin谢谢你的建议:)我会的。你也可以使用XML,但对于移动设备,我建议使用XML和JSON,因为它更轻,而且你可以找到很多库。。您也可以开发自己的数据封装格式,但这需要一些时间,如果您希望将来让您的客户端应用程序与其他服务器或您的服务器一起工作以向其他客户端发送数据,您必须返回并使用一些标准,如JSON或XMLhai@Cata,我已经听从您的建议,但我在将JSON解析方法的结果放入return语句时遇到了问题。你能马上帮我吗