Gdy użytkownik wybierze plik i kliknie element menu „Otwórz za pomocą” w interfejsie Dysku, Dysk przekieruje go do adresu URL otwierania aplikacji zdefiniowanego w artykule Konfigurowanie integracji z interfejsem Dysku.
Jeśli podczas konfigurowania integracji interfejsu Dysku zaznaczysz pole „Importowanie”, użytkownik będzie mógł wybrać kombinację plików specyficznych dla aplikacji i plików Google Workspace do otwarcia. Podczas konfigurowania integracji interfejsu Dysku pliki specyficzne dla aplikacji są definiowane w polach „Domyślne typy MIME” i „Domyślne rozszerzenia plików”, a pliki Google Workspace – w polach „Dodatkowe typy MIME” i „Dodatkowe rozszerzenia plików”.
W przypadku każdego pliku, który użytkownik chce otworzyć, Dysk sprawdza typy MIME w porównaniu z zdefiniowanymi domyślnymi i dodatkowymi typami MIME:
- W przypadku typów MIME zdefiniowanych w polu „Domyślne typy MIME” identyfikator pliku jest przekazywany do aplikacji. Informacje o tym, jak obsługiwać pliki specyficzne dla aplikacji, znajdziesz w artykule Obsługa adresu URL otwartego dla dokumentów specyficznych dla aplikacji. 
- W przypadku typów MIME zdefiniowanych w polu „Dodatkowe typy MIME” interfejs Dysku wyświetla okno z pytaniem, na jaki typ pliku przekonwertować plik Google Workspace. Jeśli na przykład w interfejsie Dysku wybierzesz plik Dokumentów Google, a w polu „Dodatkowe typy MIME” pojawi się informacja, że Twoja aplikacja obsługuje typy text/plain lub application/pdf, interfejs Dysku zapyta użytkownika, czy chce przekonwertować plik na tekst prosty lub PDF. - Informacje o tym, jak obsługiwać pliki Google Workspace, znajdziesz w artykule Obsługa otwartego adresu URL dokumentów Google Workspace. Listę dokumentów Google Workspace i formatów konwersji typów MIME znajdziesz w artykule Eksportowanie typów MIME dla dokumentów Google Workspace. 
Obsługa otwierania adresu URL w przypadku dokumentów specyficznych dla aplikacji
Jak wspomnieliśmy w artykule Konfigurowanie integracji interfejsu Dysku, Twoja aplikacja otrzymuje zmienne szablonu z informacjami, które umożliwiają jej otwarcie pliku. Aplikacja otrzymuje domyślny zestaw zmiennych szablonu w parametrze state. Domyślne informacje state dla adresu URL otwierania aplikacji to:
{
  "ids": ["ID"],
  "resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
  "action":"open",
  "userId":"USER_ID"
}
Dane wyjściowe zawierają te wartości:
- ID: identyfikator folderu nadrzędnego.
- RESOURCE_KEYS: słownik JSON identyfikatorów plików przypisanych do odpowiednich kluczy zasobów.
- open: wykonywana czynność. W przypadku używania funkcji OpenURL wartość wynosi- open.
- USER_ID: identyfikator profilu, który jednoznacznie identyfikuje użytkownika.
Aplikacja musi zareagować na tę prośbę, wykonując te czynności:
- Sprawdź, czy pole actionma wartośćopeni czy poleidsjest obecne.
- Użyj wartości userId, aby utworzyć nową sesję użytkownika. Więcej informacji o zalogowanych użytkownikach znajdziesz w artykule Użytkownicy i nowe zdarzenia.
- Użyj metody files.get, aby sprawdzić uprawnienia, pobrać metadane pliku i pobrać zawartość pliku za pomocą wartościID.
- Jeśli w żądaniu ustawiono wartość resourceKeys, ustaw nagłówek żądaniaX-Goog-Drive-Resource-Keys. Więcej informacji o kluczach zasobów znajdziesz w artykule Uzyskiwanie dostępu do plików udostępnionych za pomocą linku przy użyciu kluczy zasobów.
Parametr state jest zakodowany w formacie adresu URL, więc aplikacja musi obsługiwać znaki ucieczki i parsować go jako JSON.
Obsługa otwierania adresu URL dokumentów Google Workspace
Jak wspomniano w artykule Konfigurowanie integracji interfejsu Dysku, Twoja aplikacja otrzymuje domyślny zestaw zmiennych szablonu w ramach parametru state. Domyślne stateinformacjestate o adresie URL Google Workspace Open to:
{
  "exportIds": ["ID"],
  "resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
  "action":"open",
  "userId":"USER_ID"
}
Dane wyjściowe zawierają te wartości:
- EXPORT_ID: lista identyfikatorów eksportowanych plików rozdzielonych przecinkami. Używane tylko podczas otwierania plików Google Workspace.
- RESOURCE_KEYS: słownik JSON identyfikatorów plików przypisanych do odpowiednich kluczy zasobów.
- open: wykonywana czynność. W przypadku używania funkcji OpenURL wartość wynosi- open.
- USER_ID: identyfikator profilu, który identyfikuje użytkownika.
Aplikacja musi zareagować na tę prośbę, wykonując te czynności:
- Sprawdź, czy jest to żądanie otwarcia pliku, wykrywając wartość - openw polu- statei obecność pola- exportIds.
- Użyj metody - files.get, aby sprawdzić uprawnienia, pobrać metadane pliku i określić typ MIME za pomocą wartości- EXPORT_ID.
- Przekonwertuj zawartość pliku za pomocą metody - files.export. Poniższy przykładowy kod pokazuje, jak wyeksportować dokument Google Workspace do żądanego typu MIME.
- Jeśli w żądaniu ustawiono wartość - resourceKey, ustaw nagłówek żądania- X-Goog-Drive-Resource-Keys. Więcej informacji o kluczach zasobów znajdziesz w artykule Uzyskiwanie dostępu do plików udostępnionych za pomocą linku przy użyciu kluczy zasobów.- Java- Python- Node.js- PHP
Wyświetl przekonwertowane pliki w trybie tylko do odczytu lub wyświetl okno dialogowe, w którym użytkownik może zapisać plik w nowym formacie.
Parametr state jest zakodowany w formacie adresu URL, więc aplikacja musi obsługiwać znaki ucieczki i parsować go jako JSON.
Użytkownicy i nowe zdarzenia
Aplikacje na Dysku powinny traktować wszystkie zdarzenia „Otwórz za pomocą…” jako potencjalne logowania. Niektórzy użytkownicy mogą mieć kilka kont, więc identyfikator użytkownika w parametrze state może nie pasować do bieżącej sesji. Jeśli identyfikator użytkownika w parametrze state nie pasuje do bieżącej sesji, zakończ bieżącą sesję w aplikacji i zaloguj się jako użytkownik, który wysłał prośbę.
Powiązane artykuły
Oprócz otwierania aplikacji z interfejsu Dysku Google aplikacje mogą wyświetlać selektor plików, aby wybierać treści w aplikacji. Więcej informacji znajdziesz w Google Picker.