Я создаю приложение камеры. Я пытаюсь сохранить некоторую информацию, используя SharedPreferences. Я хочу сохранить некоторую постоянную информацию - путь к файлу последнего изображения. Но при первом использовании приложения перед фотографированием данные будут NULL.
Итак, я хочу получитьSharedPreferences в onCreate и проверить, равно ли значение null. Но, насколько я знаю, единственный способ использовать getSharedPreferences — это только если вы ранее вызывали редактор put. Следовательно, я впервые получаю исключение указателя NULL для объекта SharedPreferences.
How do you resolve this?
//inside on Create()
imageData = getSharedPreferences("ImageData",MODE_PRIVATE);
SharedPreferences.Editor prefEditor = imageData.edit();
prefEditor.commit();
String previousImage = imageData.getString("lastImageTaken", null);
if(previousImage == null){
Log.d(TAG,"previous image is NULL");
}
else{
//do something with the filepath
}
//-----------------------
//in onClick of capture button
imageData = getSharedPreferences("ImageData",MODE_PRIVATE);
SharedPreferences.Editor prefEditor = imageData.edit();
prefEditor.putString("lastImageTaken", MyActivity.this.pictureFilePath);
prefEditor.commit();
String previousImage
, это в общих настройках? - person Pratik Bhat   schedule 13.12.2011oncreate
, очевидно, будет нуль, потому что ты пытаешься получить что-то, что никогда не помещалось - person Pratik Bhat   schedule 13.12.2011