В приложении я использую SharedPrefernces для сохранения / загрузки (сериализации / десериализации) некоторых объектов.
Это код десериализации:
private void loadData() {
String str = sharedPreferences.getString(PREF_TAG, null);
byte[] bytes = Base64.decode(str, Base64.DEFAULT);
try {
ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
ObjectInputStream input = new ObjectInputStream(bais);
arrayOfObjects = (ArrayList<MyObject>) input.readObject();
} catch (Exception e) {
Log.i("BUG", "error decoding serialized objects: " + e.toString());
}
if (arrayOfObjects == null) {
Log.i("BUG", "serious problem!");
}
}
Но всякий раз, когда я компилирую этот проект, строка:
arrayOfObjects = (ArrayList<MyObject>) input.readObject();
вызывает предупреждение о том, что класс, содержащий этот метод, "использует непроверенные или небезопасные операции".
Как мне избавиться от этого предупреждения или изменить свой код на более безопасный?