Android Bundle не распознает сериализуемый объект как сериализованный

Я пытаюсь передать сериализуемый объект в комплекте.

При попытке получить объект в другом действии я получаю сообщение об ошибке:

"Несовместимые типы:

Требуется: com.xxxxxx.Warmup (Мой сериализуемый объект — дополнение xxx для имени пакета)

Найдено: java.io.Serializable"

Код, в котором объект помещается в бандл:

// Display the Exercise Category List by
            // starting the ExerciseCategoryMainActivity
            Intent intent;
            intent = new Intent(getContext(), ExerciseCategoryMainActivity.class);
            intent.putExtra(Warmup.class.getSimpleName(), warmup);
            startActivity(intent);

Код, в котором я пытаюсь получить объект (и получаю сообщение об ошибке несовместимых типов):

// Get the attached bundle from the intent
    Bundle extras = getIntent().getExtras();

    Warmup warmup = extras.getSerializable(Warmup.class.getSimpleName());

И код, показывающий, что мой объект Serializable:

public class Warmup implements Serializable {
public static final long serialVersionUID = 20180228L;

person Arlo    schedule 04.12.2018    source источник
comment
Я разобрался с этим сам, и решение было довольно простым. Просто нужно было разыграть дополнения в качестве разминки:   -  person Arlo    schedule 07.12.2018


Ответы (1)


Нашел свой собственный ответ, и это было довольно просто.

Все, что мне нужно было сделать, это разыграть экстра в качестве разогрева:

Разминка разминка = (Разминка) extras.getSerializable(Warmup.class.getSimpleName());

person Arlo    schedule 06.12.2018