1
제목에서 말한 것처럼 onSharedPreferenceChanged()
메서드는 배수라고하며 내 경우에는 문제가됩니다. 이 방법에서는 암호를 암호화하고 "암호화"는 여러 번 호출되므로 응용 프로그램이 충돌하고 2Mo의 sharedPreferences 파일이 생깁니다.onSharedPreferenceChanged() 여러 번 호출
public class ParametreActivity extends PreferenceActivity implements OnSharedPreferenceChangeListener {
@SuppressWarnings("deprecation")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.parametres);
PreferenceManager
.getDefaultSharedPreferences(this)
.registerOnSharedPreferenceChangeListener(this);
}
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
String mdp;
if(key.equals("mdp")) {
mdp = sharedPreferences.getString(key, null);
if(mdp != null) {
try {
sharedPreferences.edit().putString(key, SimpleCrypto.encrypt(mdp)).apply();
} catch (Exception e) {}
}
}
}
}
나는이 메소드에서 반복적 인 Editor 객체에서'.commit'을 발견했다. 어떻게 피할 수 있는가? – user265638
Editor 개체는 어디에 있습니까? 더 이상 나는'.commit();을 보지 않는다. – greenapps
업데이트 됨 (Do stuf ...에 있음) – user265638