Permissions 在Google的操作中获取用户ID
在上,我找到了一个函数,该函数用于获取userID,以便在会话和设备中识别用户。在报告中,我读到以下内容: getUser()返回用户 获取用户对象。用户对象包含有关 用户,包括字符串标识符和个人信息(需要 请求权限,请参阅askForPermissions) 所以首先我需要申请许可。为此,我遵循链接。但是在那里我发现只有三个许可可以被请求Permissions 在Google的操作中获取用户ID,permissions,actions-on-google,userid,Permissions,Actions On Google,Userid,在上,我找到了一个函数,该函数用于获取userID,以便在会话和设备中识别用户。在报告中,我读到以下内容: getUser()返回用户 获取用户对象。用户对象包含有关 用户,包括字符串标识符和个人信息(需要 请求权限,请参阅askForPermissions) 所以首先我需要申请许可。为此,我遵循链接。但是在那里我发现只有三个许可可以被请求 名字 设备\u粗略\u位置 设备的精确位置 没有授予该用户ID的权限。当我运行代码并尝试获取userID时,它返回undefined。获取用户名很好 f
- 名字
- 设备\u粗略\u位置
- 设备的精确位置
function requestPermissonsIntent(app){
const permission = [app.SupportedPermissions.NAME];
app.askForPermission('Für eine korrekte Ausführung', permission);
}
//later in my code when asking for the userID and userName
if(app.isPermissionGranted()){
const userName = app.getUserName().displayName;
//getting the userName works fine
const userUID = app.getUser().userID;
//userUID is undefinded
...
如何获取用户ID?它应该是小写的“d”
您无需请求任何权限即可获取此用户ID。在您的操作中,返回的字符串标识符对此用户是唯一的。如果它们使用相同的帐户,则应跨设备传输
更新
截至2018年5月,该计划已被弃用,并计划于2019年5月停止
如果您需要用户ID,您有几个选项:
- 创建您自己的用户ID并将其保存在对象中,该对象将在会话之间保持。(但是,用户可以随时清空此存储。)
- 使用,它允许用户在每次调用webhook时授予您获取其Google ID以及其他配置文件信息的权限
唯一的用户id
可以保存到用户存储中
,以便在对话中工作。但点击后,它需要在谷歌主页应用程序中获得许可。因此,如果单击“停止我的服务以记住我”,我们无法将用户id保存到用户存储,因此即使使用相同的帐户,也无法在对话中传递唯一的用户id,对吗?是的,用户可以选择关闭此功能。在这种情况下,您每次都会看到一个新的用户ID。(另请注意,此功能已被弃用。请参阅更新。)
app.getUser().userId;