2010-11-12 2 views
4

Эй, ребята, мне нужен способ защиты паролем моего приложения, поэтому, когда пользователи нажимают на приложение, пароль actitivty появляется первым, и они могут получить доступ только к приложению, если правильный пароль. Его часть проекта im делает, но я застрял на этом бит. PLease ребята, любой hepl был бы оценен.Приложение для защиты паролем при запуске

+0

извините, ребята, я забыл, его для андроида. поэтому экран входа в систему необходим при запуске приложения – Fizzb89

ответ

1

Если у вас есть кнопка, которая отправляет контексты поля TextEdit:

public class Password extends Activity implements OnClickListener 
{ 
    ... other code 

    public void onCreate(Bundle savedInstanceState) 
    { 
     ...other code 
     Button sumbitButton = (Button) findViewById(R.id.submitbutton); 
     submitButton.setOnClickListener(this); 
    } 

    public void onClick(View v) 
    { 
     EditText passwordEditText = (EditText) findViewById(R.id.passwordedittext); 
     //if people are allowed to set the password on the first run uncomment the following and delete the uncommented section of this function 
     //SharedPreferences prefs = this.getApplicationContext().getSharedPreferences("prefs_file",MODE_PRIVATE); 
     //String password = prefs.getString("password",""); 
     //if(password=="") 
     //{ 
     // SharedPreference.Editor edit = prefs.edit(); 
     // edit.putString("password",passwordEditText.getText().ToString()); 
     // StartMain(); 
     //} 
     //else 
     //{ 
     // if(passwordEditText.getText().ToString()==password) 
     // { 
     //   StartMain(); 
     // } 
     //} 
     if(passwordEditText.getText().ToString()=="your app password") 
     { 
      Intent intent = new Intent(this, your_other_activity.class); 
      startActivity(intent); 
     } 
    } 

    public void StartMain() 
    { 
     Intent intent = new Intent(this, your_other_activity.class); 
     startActivity(intent); 
    } 

Это требует в макете для деятельности пароля у вас есть edittext с именем passwordedittext и кнопка под названием submitbutton.

И у вас есть основное действие (которое должно быть включено в ваш файл манифеста), которое вы должны заменить your_other_activity.class.

+0

raybritton Я пробовал выше и не работал. Сожалею. за боль. это то, что я использую. – Fizzb89

+0

Извините за задержку в ответе, какая часть кода не работает? –

+0

Он просто не обновляется правильно и обходит логин. У меня есть настройки имени пользователя и пароля в настройках. Теперь, если я пойду с кодировкой, которая позволяет строить кварты при первом посещении, это не сохранение пароля. Я думаю, мне может понадобиться фиксация() для сохранения. – Fizzb89

0

возьмите текст из своей активности пароля и сохраните его как SharedPreference. затем каждый пользователь запускает приложение выполняет проверку против sharedpreferences, сохраненной

+4

Я бы предложил сохранить хэш пароля, а не сам пароль. –

+0

спасибо за ответы ребята. im реально nw к android поэтому не знает как я сделал бы то. я создал имя пользователя и пароль для предпочтений, но не знаю, как я буду проверять его. – Fizzb89

0

Ошибка в этой строке:

if(passwordEditText.getText().ToString()=="your app password") 

должно быть

if (passwordEditText.getText().ToString().equals("your app password") 

При сравнении примитивных типов данных (например, Int, Char, Boolean), вы можете использовать ==, = и т.д.! При сравнении объектов (например, String, Car и т. Д.) Вам необходимо использовать метод .equals().

Смежные вопросы