自定义Parcelable引发的AlarmManager设置的Alarm无法收到

来源:互联网 发布:阿里云百倍故障赔偿 编辑:程序博客网 时间:2024/06/05 19:29
自定义Parcelable对你的APP而言是唯一的,但Android framework并不认识它,所以,如果framework需要修改Intent extras的时候,可能需要重新创建Parcelable对象,但是framework却没有Parcelable所对应的class,此时将会报错。
一个常见的可能发生该问题的地方就是使用AlarmManager的时候。在使用AlarmManager时传递自定义Parcelable对象,在Android N以前可能还可以正常运行,但是在Android N及之后的版本将无法正常运行,表现为Alarm不能正常触发。
在APP进程内使用自定义Parcelable是安全的,比如在LocalBroadcastManager Intents 中使用是安全的。但是不推荐在onSaveInstanceState中使用。
切记在使用AlarmManager时不要使用自定义Parcelable,否则你将收不到Alarm。
阅读全文
0 0
原创粉丝点击