首页 > 解决方案 > Google Drive UI 集成问题:我的应用文件缺少“打开方式...”建议

问题描述

我最近推出了一个带有 Google Drive UI 集成的 Marketplace 应用程序。

我遇到了一个问题,即在预览我们的第三方快捷方式文件时,Google Drive 无法向未在其 Drive 中安装我的应用程序的用户提供“打开方式...”的建议。

Drive 使用文件的 mimeType 为与 mimeType 兼容的应用程序提供建议。因此,Google Drive 似乎无法将我在应用程序文件中设置的 mimeType 连接到其内部记录中的 mimeType。

按照文档 [1] 的说明,我在我的应用程序文件上设置的 mimeType 是application/vnd.google-apps.drive-sdk(第三方快捷方式文件)。检查页面的 html 后,我们看到 Drive 实际上具有正确的 mimeType

<span class="a-q-Jc-wg" data-tooltip="application/vnd.google-apps.drive-sdk.6964198....." aria-label="application/vnd.google-apps.drive-sdk.6964198....." data-tooltip-align="b,c" data-tooltip-delay="500" data-tooltip-unhoverable="true">my app</span>

最后附加的这些数字(6964198 .....)构成了我的 Google Cloud 项目 ID。在检查另一个市场应用程序 Lucidchart 后,他们的 mimeType 是application/vnd.google-apps.drive-sdk.7081045131. 如果有人与未安装 lucidchart 的其他人共享 Lucidchart 快捷方式,则在打开时,他们会收到“使用 Lucidchart 建议打开”他们的应用程序按预期工作,但我没有,并且比较第三方快捷方式文件属性显示没有不同。

通过 Drive 中的“获取详细信息”查看我们文件的属性之一表明 Google Drive 能够将 fileType 识别为我的应用程序的文件。

一旦用户安装了我的应用程序,他们就可以在预览文件时看到“打开方式...”。这给人的印象是 mimeType 设置正确并且可用于驱动,但 GDrive 在安装前没有正确使用它。

我花了很多时间试图找出可能导致此问题的原因,但我被卡住了。我三次检查了我的配置,一切似乎都按照文档 [2] 的指示正确设置。

我在这件事上向谷歌支持打开了 2 张票,我什至与他们通了电话,但最终他们说我似乎做的一切都是正确的,但他们无法进一步帮助我,并建议发布一个关于 StackOverflow 的问题......所以我在这里寻求你的帮助。

我的应用程序的后端是用 Node.js 编写的并使用googleapis:51.0.0模块。

这是我保存文件的一段代码:

const gDrivePayload = {
    requestBody: {
        name: presentation.name,
        mimeType: "application/vnd.google-apps.drive-sdk",
        parents: [folderId],
        properties: { presentationId }
    }
};

if (thumbnailData) {
    gDrivePayload.requestBody.contentHints = { thumbnail: { image: thumbnailData } };
}

const drive = google.drive({ version: "v3", auth: gAuthClient });
const gDriveResp = await drive.files.create(gDrivePayload);

gAuthClientgoogle.auth.OAuth2是通过用户执行的 oauth2 流获得的提供用户令牌的一个实例。

thumbnailData是 base64 编码的 jpeg 图像。

[1] https://developers.google.com/drive/api/v3/third-party-shortcuts

[2] https://developers.google.com/drive/api/v3/enable-sdk?hl=sk

标签: node.jsgoogle-drive-api

解决方案


推荐阅读