Не удается прочитать Parcelable из Intent в onActivityReenter - PullRequest
0 голосов
/ 04 июня 2018

Я хочу вернуть мою модель адреса как результат Intent.Если я пытаюсь получить свою модель адреса в onAcivityResult методах, все работает нормально, но в onActivityReenter я получил это Exception:

Class not found when unmarshalling: ua.com.uklontaxi.models.UIAddress
java.lang.ClassNotFoundException: ua.com.myapp.models.UIAddress
    at java.lang.Class.classForName(Native Method)
    at java.lang.Class.forName(Class.java:324)
    at android.os.Parcel.readParcelableCreator(Parcel.java:2383)
    at android.os.Parcel.readParcelable(Parcel.java:2337)
    at android.os.Parcel.readValue(Parcel.java:2243)
    at android.os.Parcel.readArrayMapInternal(Parcel.java:2592)
    at android.os.BaseBundle.unparcel(BaseBundle.java:221)
    at android.os.Bundle.getParcelable(Bundle.java:786)

В других местах таких ошибок нет (например, onActivityResult в том же Activity)

Как это исправить?

PS Я поставил свою модель на Bundle, а затем поставил этот комплект на Intent,Я попытался поместить адрес в Intent без Bundle -wrapping.Это мне не поможет.

1 Ответ

0 голосов
/ 04 июня 2018

Мне это помогает:

override fun onActivityReenter(resultCode: Int, data: Intent?) {
   super.onActivityReenter(resultCode, data)

   data?.setExtrasClassLoader(this.classLoader) // this is context!
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...