Parcelable вложенный универсальный загрузчик классов - PullRequest
0 голосов
/ 22 мая 2019

Мое приложение Android сообщает о нескольких сбоях (NullPointerException: Attempt to invoke virtual method 'java.lang.Class java.lang.Object.getClass()' on a null object reference) при получении Class Loader следующим образом (мой класс содержит Creator<MyParcelableClass> CREATOR):

public class MyParcelableClass implements Parcelable {
    public MyClassA<MyClassB> myAttribute;

    protected MyParcelableClass(Parcel in) {
        this.myAttribute = in.readParcelable(myAttribute.getClass().getClassLoader());
    }
    ...
}
  1. Я хотел бы знать, почему это происходитполучить загрузчик класса редко удается, а не каждый раз, так как я ожидаю, что myAttribute будет нулевым во время вызова.
  2. Я собирался настроить свой код, поэтому я не вызываю myAttribute.getClass(), а лучше использовать MyClassA.class.getClassLoader().Однако, поскольку я использую вложенные генерики, я не уверен, так ли это на самом деле работает в этом случае.
...