Implementa la compatibilidad con unidades compartidas

Las unidades compartidas siguen modelos diferentes de organización, uso compartido y propiedad que Mi unidad. Si tu app creará y administrará archivos en unidades compartidas, debes implementar la compatibilidad con unidades compartidas en ella. La complejidad de la implementación dependerá de la funcionalidad de la app.

Para comenzar, debes incluir el parámetro de consulta supportsAllDrives=true en tus solicitudes cuando tu app realice las siguientes operaciones:

API de Drive v3

  • files.get
  • files.list
  • files.create
  • files.update
  • files.copy
  • files.delete
  • changes.list
  • changes.getStartPageToken
  • permissions.list
  • permissions.get
  • permissions.create
  • permissions.update
  • permissions.delete

API de Drive v2

  • files.get
  • files.list
  • files.insert
  • files.update
  • files.patch
  • files.copy
  • files.trash
  • files.untrash
  • files.delete
  • files.touch
  • children.insert
  • parents.insert
  • changes.list
  • changes.getStartPageToken
  • changes.get
  • permissions.list
  • permissions.get
  • permissions.insert
  • permissions.update
  • permissions.patch
  • permissions.delete

El parámetro supportsAllDrives=true informa a Google Drive que tu aplicación está diseñada para controlar archivos en unidades compartidas.

Las aplicaciones que leen o modifican permisos, hacen un seguimiento de los cambios o realizan búsquedas en varios corpus requieren capacidades adicionales de unidades compartidas. En el resto de este documento, se destacan los cambios adicionales necesarios para realizar estas tareas.

Cómo buscar contenido en una unidad compartida

Usa el método list en el recurso files para encontrar archivos de usuarios en unidades compartidas. Para buscar una unidad compartida, consulta Cómo buscar unidades compartidas.

El método list contiene los siguientes parámetros de consulta específicos de la unidad compartida:

  • driveId: ID de la unidad compartida en la que se realizará la búsqueda.

  • corpora: Cuerpos de los elementos (archivos o documentos) a los que se aplica la búsqueda. Los cuerpos admitidos son user, domain, drive y allDrives. Se prefiere user o drive a allDrives para lograr eficiencia. De forma predeterminada, los corpus se establecen en user.

  • includeItemsFromAllDrives: Indica si se deben incluir en los resultados los elementos de Mi unidad y de las unidades compartidas. Si no está presente o se establece como falso, no se muestran los elementos de la unidad compartida.

  • supportsAllDrives: Indica si la aplicación solicitante admite tanto Mi unidad como las unidades compartidas. Si es falso, los elementos de unidades compartidas no se incluyen en la respuesta.

Los siguientes modos de búsqueda son específicos de las unidades compartidas:

includeItemsFromAllDrives corpora Descripción de la consulta
true user Consulta los archivos a los que accedió el usuario, incluidos los archivos de unidades compartidas y de Mi unidad.
true domain Consulta los archivos que se comparten con el dominio, incluidos los archivos de unidades compartidas y de Mi unidad.
true drive Consulta todos los elementos de la unidad compartida especificada. Se debe especificar driveId en la solicitud.
true allDrives Consulta los archivos a los que accedió el usuario y todas las unidades compartidas de las que es miembro. Ten en cuenta que la respuesta puede incluir incompleteSearch:true, lo que indica que no se buscaron algunos corpus para esta solicitud.

Cómo hacer un seguimiento de los cambios en una unidad compartida

Usa el método list en el recurso changes para hacer un seguimiento de los cambios en una unidad compartida. Para obtener más información, consulta Cómo hacer un seguimiento de los cambios para los usuarios y las unidades compartidas.

El método list contiene los siguientes parámetros de consulta específicos de la unidad compartida:

  • driveId: Es la unidad compartida desde la que se devuelven los cambios. Si se especifica, los IDs de cambio hacen referencia a los cambios en los elementos dentro de la unidad compartida que proporciona el estado actual de un archivo. Para hacer referencia a un cambio específico en una unidad compartida, se deben usar el ID de la unidad compartida y el ID del cambio como identificadores.

  • includeItemsFromAllDrives: Indica si los archivos o los cambios de la unidad compartida se deben incluir en la lista de cambios.

  • supportsAllDrives: Indica si la aplicación solicitante admite unidades compartidas. Si es falso, no se devuelven los elementos de unidades compartidas, incluidas las unidades compartidas y los archivos dentro de una unidad compartida.

Los siguientes modos de búsqueda son específicos de las unidades compartidas:

includeItemsFromAllDrives driveId Descripción de la consulta
true No Los cambios reflejan las modificaciones en los archivos dentro o fuera de las unidades compartidas a las que accedió el usuario, así como los cambios en las unidades compartidas en las que el usuario es miembro.
true Los cambios reflejan los que se realizaron en la unidad compartida específica que se indicó y en los elementos que contiene.

Para obtener más detalles sobre el comportamiento del registro de cambios, consulta Cómo hacer un seguimiento de los cambios para los usuarios y las unidades compartidas.

Habilita la compatibilidad con unidades compartidas en la IU de Drive

Para acceder al contenido de las unidades compartidas con la IU de Drive, asegúrate de haber marcado la casilla Compatibilidad con unidades compartidas en la pestaña Integración de la IU de Drive de la API de Google Drive en la consola de Google Cloud. Para obtener más información, consulta Cómo configurar una integración de la IU de Drive.

Cómo usar el Selector de Google con unidades compartidas

El Selector de Google permite seleccionar elementos en unidades compartidas. Para obtener detalles sobre cómo habilitar la compatibilidad con unidades compartidas y agregar vistas de unidades compartidas en el selector, consulta la API de Google Picker.