Поведение, которое я наблюдаю за w.r.t, передавая сериализуемые данные как дополнительные, довольно странно, и я просто хотел уточнить, есть ли что-то, чего я не пропускаю.
Итак, я пытаюсь сделать это в том, что в ActivtyA
я помещал экземпляр LinkedList
в созданный intent
для запуска следующего действия - ActivityB
.
LinkedList<Item> items = (some operation);
Intent intent = new Intent(this, ActivityB.class);
intent.putExtra(AppConstants.KEY_ITEMS, items);
В onCreate
из ActivityB
я попытался извлечь дополнительный LinkedList
следующим образом -
LinkedList<Item> items = (LinkedList<Item>) getIntent()
.getSerializableExtra(AppConstants.KEY_ITEMS);
При запуске этого процесса я снова получил ClassCastException
в ActivityB
в строке выше. В принципе, исключение говорит, что я получил ArrayList
. Как только я изменил код выше, чтобы получить ArrayList
, все работало нормально.
Теперь я не могу просто выяснить из существующей документации, является ли это ожидаемым поведением на Android при передаче сериализуемых реализаций List. Или, может быть, есть что-то принципиально неправильное с тем, что я делаю.
Спасибо.