Dialogflow:每次调用应用程序时都需要询问用户权限吗?

Dialogflow: Need to ask user permissions every time app is invoked?

我的 Dialogflow 应用程序调用 app.askForPermission() 让用户授予权限,以便我的应用程序可以获取他的位置。

我是否需要在用户每次启动应用程序时都向他询问此权限?我希望我只需要询问给定用户一次。

目前,是的,您每次想要访问该值时都需要请求权限。但是,您可以使用 JSON 对象 app.data 缓存在对话步骤之间获得的结果。您还可以使用 JSON 对象 app.userStorage 缓存在会话之间获得的结果。在这些情况下,您应该确保用户知道您在您的应用和隐私政策中缓存了这些数据。

app.userStorage.lastLocation = <location result>

然后您可以在下次用户启动您的应用程序时使用它。

在某些情况下,这可能并不理想,具体取决于应用的用例和您寻求的粒度级别。