2017-04-11 2 views
0

** Lorsque l'application ouvrira l'immatérialité demandera le mot de passe. Initialement le mot de passe est statique comme (1111). Lorsque vous accédez à l'utilisateur de l'activité d'accueil, changer l'option de mot de passe est vous available.Could s'il vous plaît aidez comment faire ... MerciComment mettre à jour la chaîne de préférence partagée (mot de passe) dans android

1. MainActivity.java 
String storedPassword = "1111"; 
strPassword=tv_password.getText().toString(); 
      if(storedPassword.equals(strPassword)) { 
       Intent MainIntent = new Intent(MainActivity.this, HomeActivity.class); 
       startActivity(MainIntent); 
      }else { 
       Toast.makeText(MainActivity.this,"Please check your password",Toast.LENGTH_LONG).show(); 
      } 

2. Homeactivity.java 
public class HomeActivity extends Activity implements View.OnClickListener { 
private Button bt_change_password; 
AlertDialog.Builder alert = new AlertDialog.Builder(this); 

      alert.setTitle("Edit Password"); 

      LinearLayout layout = new LinearLayout(this); 
      layout.setOrientation(LinearLayout.VERTICAL); 
      LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
        LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT); 
      params.setMargins(20, 0, 30, 0); 
      EditText first_password = new EditText(HomeActivity.this); 
      EditText secound_password = new EditText(HomeActivity.this); 
      first_password.setHint("new password"); 
      secound_password.setHint("new password(again)"); 
      layout.addView(first_password, params); 
      layout.addView(secound_password, params); 
      alert.setView(layout); 
      alert.setPositiveButton("OK", new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int whichButton) { 

       } 
      }); 
      alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int whichButton) { 
        // do nothing 
       } 
      }); 
      alert.show(); 
      break; 

Répondre

1
Problem is resolved... 
set Shared Pref:    
      alert.setPositiveButton("OK", new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int whichButton) { 
        userId= first_password.getText().toString(); 
        SharedPreferences settings = PreferenceManager 
          .getDefaultSharedPreferences(HomeActivity.this); 
        SharedPreferences.Editor edit = settings.edit(); 
        edit.putString("name", userId); 
        edit.commit(); 
        } 

get shared pref: 

SharedPreferences settins = PreferenceManager 
      .getDefaultSharedPreferences(MainActivity.this); 
    strPassword=settins.getString("name", storedPassword); 
2
public class PrefManager { 
    SharedPreferences pref; 
    SharedPreferences.Editor editor; 
    Context _context; 

    // shared pref mode 
    int PRIVATE_MODE = 0; 

    // Shared preferences file name 
    private static final String PREF_NAME = "MY_TAG"; 
    private static final String PASS_TAG= "my_pass_tag"; 


public PrefManager(Context context) { 
     this._context = context; 
     pref = _context.getSharedPreferences(PREF_NAME, PRIVATE_MODE); 
     editor = pref.edit(); 
    } 

public void Setpassword(String password) { 
     editor.putString(PASS_TAG, password); 
     editor.commit(); 
    } 
    public int getpassword() { 
     return pref.getString(PASS_TAG); 
    }} 

et vous pouvez l'utiliser

PrefManager prefManager; 
    prefManager = new PrefManager(this); 
    String _act = prefManager.getpassword(); 
    prefManager.setpassword(password) 
+0

Merci pour votre réponse. Initialement le mot de passe est statique dans une activité. Quand nous allons à une autre activité, alors j'ai le mot de passe de changement. Je vais la manière correcte ?? dans mon code ??? –

+0

Désolé, ce n'est pas mettre à jour le mot de passe. –