Android的Parcelable中describeContents方法的做用

这个方法返回的值一般为0,那什么状况下须要填写其余值呢?安全

这个方法到目前为止返回其余惟一有效的值就是CONTENTS_FILE_DESCRIPTOR(0x01),指明这个Parcel的内容包含文件描述符。DropBoxManager、ParcelFileDescriptor和InputChannel等用到这个值。数据结构

那文件描述符是什么呢?获取到文件描述符能作什么呢?你们知道在类UNIX系统中,一切皆是文件,文件描述符就是操做文件的数据结构,获取到文件描述符能够完成全部文件相关的操做。ip

由于文件描述符的做用如此之大,为了防止leak,须要禁止在Bundle传输Parcel时包含文件描述符,因此经过Parcel中包含ParcelFileDescriptor等在Bundle中使用时会抛出IllegalArgumentException。io

因此,这个值是在系统内部进行安全保护所使用的,其余状况下填0便可。方法

相关文章
相关标签/搜索