如何使用Android中的登录凭据对我的服务器进行身份验证?

时间:2015-02-28 09:59:15

标签: java android sharedpreferences httpurlconnection androidhttpclient

我对Android很新,因为我是一名自学者,所以我一直遇到以下问题。 我在MainActivity中有一个简单的代码

   login.setOnClickListener(new View.OnClickListener() {

          @Override
           public void onClick(View view) {

            String sapCode = String.valueOf(sapcode.getText());
            String userName = String.valueOf(username.getText());
            String pwd = String.valueOf(password.getText());

            if (sapCode.equals("017343") && userName.equals("root") &&
                pwd.equals("root123")) {
                   message.setText("Login Successful!");
                   System.out.println("After successful and before Intent");
                   Intent intent = new Intent(context, HomeActivity.class);
                   startActivity(intent);
            } else {
                message.setText("Login Unsuccessful!");
            }
        }
    });

正如您在上面的代码中看到的那样,通过从视图中获取用户凭据,我通过提供硬编码值进行身份验证。

但是对于那些代码,确实我应该通过在post方法中提供这些凭据来休息调用我的webapplication进行登录。 URL看起来像

http://myapp.co.in/login.do (or) http://myapp.co.in/rest/login

这样我的webapplication中的java代码就可以访问这些值并根据这些值进行身份验证。

现在我的问题是

1)如何从我的Android应用程序发出此类请求?

2)如果我的Web应用程序中的身份验证成功,那么如何在我的Android应用程序中管理会话? 我遇到了一些问题而且我一直坚持下去。任何帮助将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:1)

1。要进行客户端网络服务呼叫,请使用HttpURLConnection。官方教程是here;

2. 要在Android中保留会话,您可以使用CookieStore或手动保存,清除并检索 user_id SharedPreference中的session_id

你去。

修改

HttpClient应该用于Froyo& Eclair,而HttpURLConnection是姜饼和姜饼的首选。有关各种连接方法之间的差异,请参阅Android's HTTP Clients