Saat pengguna memilih file dan mengklik item menu "Buka dengan" UI Drive, Drive akan mengalihkan pengguna ke URL Terbuka aplikasi yang ditentukan dalam Mengonfigurasi integrasi UI Drive.
Jika Anda mencentang kotak "Mengimpor" saat mengonfigurasi integrasi UI Drive, pengguna dapat memilih kombinasi file khusus aplikasi dan file Google Workspace untuk dibuka. Saat Anda mengonfigurasi integrasi UI Drive, file khusus aplikasi ditentukan di kolom "Jenis MIME default" dan "Ekstensi file default", sedangkan file Google Workspace ditentukan di kolom "Jenis MIME sekunder" dan "Ekstensi file sekunder".
Untuk setiap file yang ingin dibuka pengguna, Drive akan memeriksa jenis MIME terhadap jenis MIME default dan sekunder yang Anda tentukan:
Untuk jenis MIME yang ditentukan dalam kolom "Jenis MIME default", ID file diteruskan ke aplikasi Anda. Untuk mengetahui informasi tentang cara menangani file khusus aplikasi, baca Menangani URL Terbuka untuk dokumen khusus aplikasi.
Untuk jenis MIME yang ditentukan dalam kolom "Jenis MIME sekunder", UI Drive akan menampilkan dialog yang menanyakan kepada pengguna jenis file apa yang akan digunakan untuk mengonversi file Google Workspace. Misalnya, jika Anda memilih file Google Dokumen di UI Drive dan kolom "Jenis MIME sekunder" menunjukkan bahwa aplikasi Anda mendukung teks/biasa atau application/pdf, UI Drive akan menanyakan pengguna apakah mereka ingin mengonversi ke Teks Biasa atau PDF.
Untuk mengetahui informasi cara menangani file Google Workspace, lihat Menangani Open URL untuk dokumen Google Workspace. Untuk mengetahui daftar dokumen Google Workspace dan format konversi jenis MIME, lihat Mengekspor jenis MIME untuk dokumen Google Workspace.
Menangani Open URL untuk dokumen khusus aplikasi
Seperti yang disebutkan dalam Mengonfigurasi integrasi UI
Drive,
aplikasi Anda menerima variabel template dengan informasi agar aplikasi dapat membuka
file. Aplikasi Anda menerima kumpulan variabel template default
dalam parameter state
. Informasi
state
default untuk Open URL khusus aplikasi adalah:
{
"ids": ["ID"],
"resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
"action":"open",
"userId":"USER_ID"
}
Output ini mencakup nilai-nilai berikut:
- ID: ID folder induk.
- RESOURCE_KEYS: Kamus JSON ID file yang dipetakan ke kunci resource masing-masing.
open
: Tindakan yang sedang dilakukan. Nilainya adalahopen
saat menggunakan Open URL.- USER_ID: ID profil yang mengidentifikasi pengguna secara unik.
Aplikasi Anda harus bertindak atas permintaan ini dengan mengikuti langkah-langkah berikut:
- Verifikasi bahwa kolom
action
memiliki nilaiopen
dan kolomids
ada. - Gunakan nilai
userId
untuk membuat sesi baru bagi pengguna. Untuk mengetahui informasi selengkapnya tentang pengguna yang login, lihat Pengguna & peristiwa baru. - Gunakan metode
files.get
untuk memeriksa izin, mengambil metadata file, dan mendownload konten file menggunakan nilaiID
. - Jika
resourceKeys
ditetapkan pada permintaan, tetapkan header permintaanX-Goog-Drive-Resource-Keys
. Untuk informasi selengkapnya tentang kunci resource, lihat Mengakses file yang dibagikan melalui link menggunakan kunci resource.
Parameter state
dienkode ke URL, sehingga aplikasi Anda harus menangani karakter escape dan mengurainya sebagai JSON.
Menangani Open URL untuk dokumen Google Workspace
Seperti yang disebutkan dalam Mengonfigurasi integrasi UI
Drive, aplikasi Anda menerima kumpulan
variabel template default dalam parameter state
. Informasi state
default
untuk Open URL Google Workspace adalah:
{
"exportIds": ["ID"],
"resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
"action":"open",
"userId":"USER_ID"
}
Output ini mencakup nilai-nilai berikut:
- EXPORT_ID: Daftar yang dipisahkan koma dari ID file yang sedang diekspor (hanya digunakan saat membuka dokumen Google bawaan).
- RESOURCE_KEYS: Kamus JSON ID file yang dipetakan ke kunci resource masing-masing.
open
: Tindakan yang sedang dilakukan. Nilainya adalahopen
saat menggunakan Open URL.- USER_ID: ID profil yang mengidentifikasi pengguna.
Aplikasi Anda harus bertindak atas permintaan ini dengan mengikuti langkah-langkah berikut:
Verifikasi bahwa ini adalah permintaan untuk membuka file dengan mendeteksi nilai
open
di kolomstate
dan adanya kolomexportIds
.Gunakan metode
files.get
untuk memeriksa izin, mengambil metadata file, dan menentukan jenis MIME menggunakan nilaiEXPORT_ID
.Konversikan konten file menggunakan metode
files.export
. Contoh kode berikut menunjukkan cara mengekspor dokumen Google Workspace ke jenis MIME yang diminta.Jika
resourceKey
ditetapkan pada permintaan, tetapkan header permintaanX-Goog-Drive-Resource-Keys
. Untuk informasi selengkapnya tentang kunci resource, lihat Mengakses file yang dibagikan melalui link menggunakan kunci resource.Java
Python
Node.js
PHP
Menampilkan file yang dikonversi sebagai hanya baca atau menampilkan dialog yang memungkinkan pengguna menyimpan file sebagai jenis file baru.
Parameter state
dienkode ke URL, sehingga aplikasi Anda harus menangani karakter escape dan mengurainya sebagai JSON.
Pengguna & acara baru
Aplikasi Drive harus memperlakukan semua peristiwa "buka dengan" sebagai potensi login. Beberapa pengguna mungkin memiliki beberapa akun, sehingga ID pengguna dalam parameter state
mungkin tidak cocok dengan sesi saat ini. Jika ID pengguna dalam parameter state
tidak cocok dengan sesi saat ini, akhiri sesi saat ini untuk aplikasi Anda dan login sebagai pengguna yang diminta.
Topik terkait
Selain membuka aplikasi dari UI Google Drive, aplikasi dapat menampilkan alat pilih file untuk memilih konten dari dalam aplikasi. Untuk informasi selengkapnya, lihat Alat Pilih Google.