Processa o valor da preferência antes de salvar no Android?
Preciso criptografar minha senha antes de salvá-la no banco de dados local do Android. Tudo funciona bem, sem criptografia, tenho preferência.xml e assim. Como posso chamar uma funçãodepois d Altero o valor da preferência (por exemplo, senha)? Aqui está o meu código:
public class Preferences extends PreferenceActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
// Get the custom preference
Preference customPref = (Preference) findPreference("pass");
customPref.setOnPreferenceChangeListener(new OnPreferenceChangeListener(){
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String crypto = SimpleCrypto.encrypt("MYSECRETKEY", newValue.toString()); // encrypt
// Here is where I'm wrong, I guess.
SharedPreferences settings = getSharedPreferences("preferences", MODE_PRIVATE);
SharedPreferences.Editor editor = settings.edit();
editor.putString("pass", crypto);
editor.commit();
});
}
}
P.S: assim, quando troco de senha, ele armazena a senha sem criptografi