2

查看有关身份验证的 App Action 切片执行信息。谷歌有这些来自https://developers.google.com/actions/appactions/slices#handling_authentication的行:

  • 必需)在需要用户身份验证来完成用户流程的情况下,返回一个说明用户需要在应用程序中继续的 Slice。应用操作不支持助手中的内联用户身份验证。

  • 如果用户允许您的应用通过切片显示数据,您可以在运行时为未经授权的用户返回错误切片。

但是,我无法找到任何关于在哪里可以找到助手启动功能的身份验证的参考。这是在切片提供程序中提供的,还是在调用您的应用程序之前由助手为帐户自动处理?有一个在切片中提供您的帐户信息的用例,您需要以某种方式验证助手请求,无论是来自助手的某些内容,即语音与设备上的现有用户匹配,或者与您拥有的其他类型的帐户信息匹配设备。

4

1 回答 1

0

App Actions 有两种实现模式(通过深层链接或通过 Slice)。在这两种情况下,Assistant 请求 App Action 时运行的代码都在您的应用程序中(通过 your 的深层链接和通过 your 的ActivitySlices SliceProvider)。

这意味着您自己的代码可以检查用户是否已登录您的应用程序并做出相应的响应。

  • 对于深度链接实现,您的一项活动将打开,您可以将用户重定向到您的主登录屏幕

  • 对于 Slice,在您的SliceProvider中,您可以检查用户是否已登录,如果未登录,则返回一个 Slice,其中包含说明用户需要通过您的应用登录才能查看内容的文本。Assistant 中显示的切片也会在页脚自动有一个“打开应用”按钮,因此用户可以直接打开您的应用以通过您的常规应用登录流程登录(您也可以在切片的正文中添加自己的链接,该链接可以使用用户到登录屏幕,由您决定)。

因此,基本上,应用操作的身份验证检查和身份验证流程完全发生在您的 Android 应用代码中。在此阶段,Assistant for App Actions 中没有身份验证流程或 API,这就是文档所说的内容:

应用操作不支持助手中的内联用户身份验证。

于 2019-06-05T23:08:27.317 回答