ClassNotFoundException ao usar Parcelable personalizado
Eu uso um Parcelable personalizado para transportar alguns dados para um BroadcastReceiver. Aqui está o que eu faço:
Registro minha intenção e defino o Parcelable extra junto com um carregador de classe extra (intent.setExtraClassLoader (..)). Em seguida, agendar a execução da transmissão por meio de um AlarmManager.
Portanto, quando o AlarmManager é acionado, ele analisa minha intenção com sua parcela, que não pode ser processada, pois não usa o carregador de classe fornecido (como é costurado).
Eu acho que o carregador de classe se perde quando Inten.fillIn copia a intenção para um novo (consulte rastreamento de pilha).
02-21 21:09:25.214: WARN/Intent(52): android.os.BadParcelableException: ClassNotFoundException when unmarshalling: com.company.project.MyParcelable
02-21 21:09:25.214: WARN/Intent(52): at android.os.Parcel.readParcelable(Parcel.java:1822)
02-21 21:09:25.214: WARN/Intent(52): at android.os.Parcel.readValue(Parcel.java:1713)
02-21 21:09:25.214: WARN/Intent(52): at android.os.Parcel.readMapInternal(Parcel.java:1947)
02-21 21:09:25.214: WARN/Intent(52): at android.os.Bundle.unparcel(Bundle.java:169)
02-21 21:09:25.214: WARN/Intent(52): at android.os.Bundle.putAll(Bundle.java:242)
02-21 21:09:25.214: WARN/Intent(52): at android.content.Intent.fillIn(Intent.java:4530)
02-21 21:09:25.214: WARN/Intent(52): at com.android.server.am.PendingIntentRecord.send(PendingIntentRecord.java:185)
02-21 21:09:25.214: WARN/Intent(52): at android.app.PendingIntent.send(PendingIntent.java:400)
02-21 21:09:25.214: WARN/Intent(52): at com.android.server.AlarmManagerService$AlarmThread.run(AlarmManagerService.java:636)
Então, existe alguma maneira de contornar esse problema? Qualquer ajuda seria apreciada.
obrigado