У меня есть функция для сохранения и получения arrayylist в моем приложении, как показано ниже
public void saveArrayList(ArrayList<String> list, String key){
Gson gson = new Gson();
String json = gson.toJson(list);
editor.putString(key, json);
editor.apply(); // This line is IMPORTANT !!!
}
public ArrayList<String> getArrayList(String key){
Gson gson = new Gson();
String json = pref.getString(key, "");
Type type = new TypeToken<ArrayList<String>>() {}.getType();
return gson.fromJson(json, type);
}
Я пытаюсь получить его в своем одном из фрагментов, как показано ниже
ArrayList<String> UserVideoLang;
и при создании как показано ниже
if (getActivity() != null) {
customDialogBuilder = new CustomDialogBuilder(getActivity());
parentViewModel = ViewModelProviders.of(getActivity()).get(HomeViewModel.class);
sessionManager = new SessionManager(getActivity());
UserVideoLang= sessionManager.getArrayList("UserVideoLang");
if(UserVideoLang.isEmpty()){
UserVideoLang.add("all");
}
}
, когда я запускаю, я получаю исключение NullPointerException в строке ниже
if(UserVideoLang.isEmpty()){
и полная ошибка, как показано ниже
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.util.ArrayList.isEmpty()' on a null object reference
at com.vedagames.wowtok.view.home.ForUFragment.onActivityCreated
Сообщите мне, что Мне не хватает информации, и как это исправить, спасибо!