Я пытаюсь запрограммировать приложение на Android, и пока все идет хорошо, я новичок в Android, поэтому я все еще изучаю все, что могу, я пытался сделать логин на основе на значениях из базы данных Mysql, и я использовал несколько кодов из другого приложения, адаптируя его к тому, что я хочу сделать, и он работает, за исключением того, что при регистрации приложение правильно проверяет пользователя и пароль с базой данных, но поскольку я могу ' не найти, как выполнить проверку, если имя пользователя или пароль неправильные или не существуют, не переходите к меню Действия Я пытался поместить логическое значение в файл Java, но, похоже, не работает или Я делаю это неправильно, это код активности входа:
Button _btnLog;
EditText _txtUsername, _txtPassword;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
_btnLog=findViewById(R.id.btnLog);
_txtUsername=findViewById(R.id.txtEmail);
_txtPassword=findViewById(R.id.txtPassword);
_btnLog.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String user_name=_txtUsername.getText().toString();
String pass_word=_txtPassword.getText().toString();
String type="login";
BackgroundTask backgroundTask= new BackgroundTask(getApplicationContext());
backgroundTask.execute(type, user_name, pass_word);
Intent intent = new Intent(login.this, app_start.class);
startActivity(intent);
}
});
Как вы можете видеть, независимо от того, что всегда будет go для следующего действия, это код для BackgroundTask :
if(type.equals("login")) {
String user_name = strings[1];
String pass_word = strings[2];
try {
URL url = new URL(loginURL);
try {
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setRequestMethod("POST");
httpURLConnection.setDoOutput(true);
httpURLConnection.setDoInput(true);
OutputStream outputStream = httpURLConnection.getOutputStream();
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(outputStream, "UTF-8");
BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter);
String login_data = URLEncoder.encode("username", "UTF-8") + "=" + URLEncoder.encode(user_name, "UTF-8") +
"&" + URLEncoder.encode("password", "UTF-8") + "=" + URLEncoder.encode(pass_word, "UTF-8");
bufferedWriter.write(login_data);
bufferedWriter.flush();
bufferedWriter.close();
InputStream inputStream = httpURLConnection.getInputStream();
InputStreamReader inputStreamReader = new InputStreamReader(inputStream, "ISO-8859-1");
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String result = "";
String line = "";
StringBuilder stringBuilder = new StringBuilder();
while ((line = bufferedReader.readLine()) != null) {
stringBuilder.append(line).append("\n");
}
result = stringBuilder.toString();
bufferedReader.close();
inputStream.close();
httpURLConnection.disconnect();
return result;
} catch (IOException e) {
e.printStackTrace();
}
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
return null;
Знаете, как это исправить? Большое спасибо.