Как я могу пройти аутентификацию на своем сервере с учетными данными для входа в Android?
Я очень плохо знаком с 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. URL выглядит как
http://myapp.co.in/login.do (or) http://myapp.co.in/rest/login
Так что мой Java-код внутри моего веб-приложения может получить доступ к этим значениям и аутентифицироваться на основе этих значений.
Теперь мои вопросы
1) Как сделать такой запрос из моего приложения для Android?
2) Если аутентификация прошла успешно в моем веб-приложении, то как я могу управлять сеансом в моем приложении для Android?
Есть проблемы, с которыми я сталкивался, и я застрял с этим. Любая помощь будет оценена. Спасибо.
1 ответ
1. Чтобы позвонить клиенту через веб-сервис, используйте HttpURLConnection
, Официальный урок здесь;
2. Чтобы сохранить сеанс в Android, вы можете использовать CookieStore
или вручную сохранить, очистить и получить user_id или session_id в SharedPreference
,
Вот и ты.
РЕДАКТИРОВАТЬ:
HttpClient
следует использовать на Froyo & Eclair, в то время как HttpURLConnection
предпочтительнее для пряников и выше. Различия между различными подходами к подключению см. В разделе HTTP-клиенты Android.