Как я могу проверить перенаправление пользователя из входа в систему Android на основе данных внутри БД? - PullRequest
0 голосов
/ 04 августа 2020

Я пытаюсь запрограммировать приложение на 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;

Знаете, как это исправить? Большое спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...