2012-05-16 3 views
0
public class LoginActivity extends Activity{ 

final String defaultPassword = "123456"; 
Button login, cancel; 
EditText input; 

@Override 
public void onCreate(Bundle savedInstanceState){ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.security); 

    //SharedPreferences from other Activity 
    final String LOGIN_PASSWORD = "Login_Password"; 
    SharedPreferences loginPassword = getSharedPreferences(LOGIN_PASSWORD, 0); 
    final String storedPass = loginPassword.getString("loginPassword", ""); 

    input = (EditText) findViewById(R.id.password); 

    cancel = (Button) findViewById(R.id.cancel); 
    cancel.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View view) {     
      finish(); 
     } 
    }); 

    login = (Button) findViewById(R.id.login); 
    login.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View view) { 

      String inputPass = input.getText().toString(); 

      if (!inputPass.equals("")){ 

       if (storedPass.equals("")){ 

        if (inputPass.equals(defaultPassword)){ 
         Toast.makeText(LoginActivity.this, "Success", Toast.LENGTH_SHORT).show(); 
         Intent intent = new Intent(LoginActivity.this, ActivateActivity.class); 
         startActivity(intent); 
        } 
        else{ 
         Toast.makeText(LoginActivity.this, "Failed", Toast.LENGTH_SHORT).show(); 
         input.setText(""); 
        } 
       } 
       else{ 

        if (inputPass.equals(storedPass)){ 
         Toast.makeText(LoginActivity.this, "Success", Toast.LENGTH_SHORT).show(); 
         Intent intent = new Intent(LoginActivity.this, ActivateActivity.class); 
         startActivity(intent); 
        } 
        else{ 
         Toast.makeText(LoginActivity.this, "Not matched", Toast.LENGTH_SHORT).show(); 
         input.setText(""); 
        } 
       } 
      } 
      else{ 
       Toast.makeText(LoginActivity.this, "Nothing", Toast.LENGTH_SHORT).show(); 
       input.setText(""); 
      } 
     } 
    }); 
} 

사용자가 처음으로 응용 프로그램을 사용할 때 내가 처음에 응용 프로그램에 액세스하기위한 로그인 페이지를 디자인하고 한 활동의 ​​된 SharedPreferences에서 데이터를 검색하는 문제가 암호가 설정되지 않은, 그래서 기본 암호 " 123456 "은 앱에 액세스하는 데 사용되며 사용자가 비밀번호를 설정하면 기본 비밀번호를 사용하여 앱에 액세스 할 수 없습니다 ... 이제는 다른 활동 공유 환경 설정에 저장된 사용자 비밀번호를 검색해야합니다. 다음에 사용자가 앱에 액세스 할 때 사용자 입력을 저장된 비밀번호와 비교할 수는 있지만 어떻게 할 수 있습니까? 코딩에 문제가 있습니까?내가 다른 활동

+0

어디서 공유 환경 설정에서 값을 설정합니까? – Akram

+0

@Android_Rookie : 다른 'Activity'에 자격 증명을 저장하면 SharedPreferences.Editor에서'commit()'을 호출합니까? 이 작업을 수행해야합니다. 그렇지 않으면 데이터가 저장되지 않습니다. – Squonk

+0

예, 활동 A에서 커밋을했는데 활동 B의 활동 A 공유 설정에서 데이터를 호출 할 수 있습니까? –

답변

0

getSharedPreferences(LOGIN_PASSWORD, 0)을 사용하는 경우 LOGIN_PASSWORD이 두 작업에서 동일한 값인지 확인하십시오. 그렇지 않으면 두 가지 기본 설정을 열려고합니다.

+0

예, 둘 다 동일한 값입니다. –

+0

@Android_Rookie 질문을 수정하고 설정하려는 위치를 추가하고 두 활동에 대한 값을 검색하십시오. –

관련 문제