Чтобы ваше приложение отображалось в Google Диске, когда пользователь создает или открывает файл, необходимо настроить интеграцию с пользовательским интерфейсом Диска. Настройка также требуется, чтобы разместить приложение в Google Workspace Marketplace.
Как включить Drive API
Прежде чем использовать API Google, их нужно включить в проекте Google Cloud. В одном проекте Google Cloud можно включить один или несколько API.
Чтобы начать интеграцию с интерфейсом Google Диска, необходимо включить Drive API. Это позволит вам использовать API и функции интеграции интерфейса.
В консоли Google Cloud включите Google Drive API.
Как настроить интеграцию с интерфейсом Диска
- В Google API Console нажмите на значок меню > APIs & Services (API и сервисы) > Enabled APIs & services (Включенные API и сервисы).
- Внизу панели управления API и сервисами нажмите Google Drive API. Откроется страница конфигурации Google Drive API.
- Выберите вкладку Интеграция с интерфейсом Диска.
- При необходимости введите название в поле Название приложения. Название приложения показывается пользователям на вкладке "Управление приложениями" в настройках Диска.
- В поле Краткое описание можно добавить описание длиной в одну строку. Краткое описание показывается пользователям на вкладке "Управление приложениями" в настройках Диска.
- При необходимости введите полное описание в поле Подробное описание.
Загрузите один или несколько значков приложения, которые будут показываться в списке подключенных приложений Диска и в контекстном меню "Открыть с помощью". Значки должны быть в формате PNG с прозрачным фоном. Значки могут появиться на Диске в течение 24 часов.
Чтобы использовать пункт меню "Открыть с помощью" в интерфейсе Диска, введите URL приложения в поле URL для открытия. Этот URL используется контекстным меню "Открыть с помощью".
- Этот URL должен содержать полное доменное имя.
localhostне подходит. - Этот URL должен быть доступен пользователям вашего приложения. Если у вас несколько версий приложения, например одна для широкой публики, а другая – для ограниченного круга пользователей, у каждой версии должен быть уникальный URL. Затем вы можете создать разные конфигурации приложения для каждой версии.
- Прежде чем размещать приложение в Google Workspace Marketplace, необходимо подтвердить право собственности на этот URL.
- По умолчанию к этому URL добавляется параметр запроса
state, чтобы передавать данные из интерфейса Диска в ваше приложение. Подробнее о параметреstatestate…
- Этот URL должен содержать полное доменное имя.
При необходимости введите MIME-типы и расширения имени файла по умолчанию в полях MIME-типы по умолчанию и Расширения имени файла по умолчанию. MIME-типы и расширения имени файла по умолчанию представляют файлы, для открытия которых предназначено ваше приложение. Например, в приложении может открываться встроенный формат для наложения слоев и редактирования изображений. Используйте только стандартные типы медиаконтента и убедитесь, что в них нет опечаток. Если ваше приложение открывает только ярлыки или файлы ярлыков сторонних приложений, вы можете оставить поле MIME-типа пустым.
При необходимости укажите дополнительные MIME-типы и расширения файлов в полях Дополнительные MIME-типы и Дополнительные расширения файлов. Вторичные MIME-типы и расширения имени файла представляют файлы, которые ваше приложение может открыть, но которые не являются специфичными для него. Например, ваше приложение может быть редактором изображений, который открывает изображения PNG и JPG. Используйте только стандартные типы медиаконтента и убедитесь, что в них нет опечаток. Если ваше приложение открывает только ярлыки или файлы ярлыков сторонних приложений, вы можете оставить поле MIME-типа пустым.
Чтобы пользователи могли создавать файлы с помощью вашего приложения, используя кнопку "Создать" в интерфейсе Диска, установите флажок Создание файлов. Появятся поля Новый URL и Название документа (необязательно).
- Этот URL должен содержать полное доменное имя.
localhostне подходит. - Прежде чем размещать приложение в Google Workspace Marketplace, необходимо подтвердить право собственности на этот URL.
- По умолчанию к этому URL добавляется параметр запроса
state, чтобы передавать данные из интерфейса Диска в ваше приложение. Подробнее о параметреstatestate…
- Этот URL должен содержать полное доменное имя.
Введите URL в поле Новый URL. Этот URL используется кнопкой "Создать" для перенаправления пользователя в ваше приложение.
Если вы хотите, чтобы ваше приложение открывало файлы, поддерживаемые Google Workspace, установите флажок Импорт.
Если вашему приложению необходимо управлять файлами на общих дисках, установите флажок Поддержка общих дисков. Подробнее о том, как реализовать поддержку общих дисков в приложении…
Нажмите Отправить.
Запросите область действия drive.install
Чтобы приложения появлялись в меню "Открыть с помощью" или "Создать", запросите область действия https://www.googleapis.com/auth/drive.install для интеграции с интерфейсом Диска. При запросе этой области действия пользователи видят диалоговое окно, похожее на следующее:
Подробнее о том, какие области действия можно запрашивать для приложений Диска и как это делать, читайте в статье Информация об авторизации и аутентификации для отдельных API.
Параметр state
По умолчанию к URL открытия и создания добавляется параметр state, который передает данные из интерфейса Диска в приложение. Этот параметр содержит строку в формате JSON с переменными шаблона и данными о запросе к приложению. Набор переменных зависит от типа URL (открытия или создания).
| Переменная шаблона | Описание | URL приложения |
|---|---|---|
{ids} |
Список идентификаторов открываемых файлов, разделенных запятыми. | Переход по URL |
{exportIds} |
Список идентификаторов экспортируемых файлов, разделенных запятыми. Используется только при открытии файлов Google Workspace. | Переход по URL |
{resourceKeys} |
Словарь JSON с идентификаторами файлов, сопоставленными с соответствующими ключами ресурсов. | Переход по URL |
{folderId} |
Идентификатор родительской папки. | Новый URL |
{folderResourceKey} |
Ключ ресурса родительской папки. | Новый URL |
{userId} |
Идентификатор профиля, который позволяет идентифицировать пользователя. | Open URL и New URL |
{action} |
Выполняемое действие. Значение open используется для открытого URL, а create – для нового.
|
"Открыть URL" и "Новый URL" |
Параметр state закодирован в URL, поэтому ваше приложение должно обрабатывать экранирующие символы и анализировать его как JSON. Приложения могут обнаруживать значение create в параметре state, чтобы проверять запросы на создание файлов.
Пример информации о состоянии в формате JSON для нового URL
Информация state для нового URL:
{
"action":"create",
"folderId":"FOLDER_ID",
"folderResourceKey":"FOLDER_RESOURCE_KEY",
"userId":"USER_ID"
}
Пример информации о состоянии в формате JSON для Open URL
Для действия "Открыть URL" в state указывается следующая информация:
{
"ids": ["ID"],
"resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
"action":"open",
"userId":"USER_ID"
}
Идентификаторы и ключи ресурсов используются для получения метаданных файлов и скачивания их контента. Получив идентификатор файла и токен доступа, приложение может проверить разрешения, получить метаданные файла и скачать его содержимое, как описано в разделе о методе files.get.
Статьи по теме
Установленное приложение должно иметь возможность создавать, открывать и управлять действиями, запущенными из интерфейса Диска. Подробнее о том, как интегрировать приложение с кнопкой "Создать" в интерфейсе Диска и как интегрировать приложение с контекстным меню "Открыть с помощью" в интерфейсе Диска…