Parcelable donde / cuando se describeContents () usado?

¿Alguien sabe dónde y cuándo se llama este método de un Parcelable ?

@Override public int describeContents() { return 0; } 

Tiene que ser anulada. ¿Pero debo considerar hacer algo útil con él?

Hay una constante definida en Parcelable llamada CONTENTS_FILE_DESCRIPTOR que está destinada a ser utilizada en describeContents() para crear valor de retorno de máscara de bits.

La descripción de CONTENTS_FILE_DESCRIPTOR en la API ref es la siguiente:

Máscaras de bits para el uso de describeContents (): cada bit representa un tipo de objeto que se considera tener un significado especial potencial cuando se ordena.

Lo que realmente significa: Si necesitas poner el objeto FileDescriptor en Parcelable, deberías especificar CONTENTS_FILE_DESCRIPTOR como valor devuelto de describeContents (), es decir, por " objeto especial " (en la describeContents() de describeContents() ) significa: FileDescriptor .

Toda esta funcionalidad Parcelable parece inacabada (lee: tiene un mal diseño). Hay otra cosa extraña en los documentos:

Las clases que implementan la interfaz Parcelable también deben tener un campo estático llamado CREATOR, que es un objeto que implementa la interfaz Parcelable.Creator

Implementación de herencia múltiple por reglas definidas en forma legible por humanos? Todos los derechos reservados

Parece que C ++ programador diseñado Parceable y en algún momento se dio cuenta: Oh, maldita sea, no hay herencia múltiple en Java … 🙂

  • ¿Cómo pasar el objeto Parcelable del niño a la actividad de los padres?
  • Arraylist en objeto parcelable
  • NullPointerException mientras se envía StringArray usando Parcelable
  • Monodroid poniendo objetos parcelables en un paquete
  • Android JUnit no se compila si los objetos son parcelables
  • Cómo hacer una lista <enum> parcelable?
  • Agregando parcelable a una clase de interfaz para objetos personalizados
  • ¿Cómo cambiar el contenido del fragmento al transferir datos del fragmento después de buscar en RecyclerView?
  • BadParcelableException - Error de BroadcastReceiver intentado
  • Cómo hacer una clase con objetos anidados Parcelable
  • ¿Qué es Parcel.enforceInterface?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.