根据Google People API的文档,我使用个人资料范围 - https://www.googleapis.com/auth/user.phonenumbers.read 和 PersonFields = phoneNumbers 来仅读取经过身份验证的用户的电话号码在他们的Google个人资料中(联系人列表中没有)。我正在使用API密钥和oAuth accesstoken来授权请求。 google people API不会仅使用上述范围获取与个人资料相关联的电话号码。除了上述范围( www.googleapis.com/auth/contacts.readonly )之外,还要为整个联系人列表读取权限添加范围,以便从中返回电话号码个人资料正确。有没有办法从他/她的个人资料中获取用户的电话号码仅使用 user.phonenumbers.read范围?
答案 0 :(得分:3)
我可以找出问题所在。对于' user.phonenumbers.read'范围人员API状态的文档 - '您的应用程序可以在 Google个人资料'中获得对经过身份验证的用户的电话号码的读取权限。
但是通过' Google个人资料'它表示Google Plus Profile 完全不同形成其核心Google个人资料 - My Account。 People API仅从Google Plus个人资料中提取信息。
因此,即使用户在我的帐户中添加了他/她的联系人详细信息,People API也不会提取他们的电话号码,除非他们在Google Plus个人资料中手动添加了这些电话号码。添加联系人详细信息后,我可以使用' auth / user.phonenumbers.read' 获取联系人详细信息,而无需添加' auth / contacts.readonly'范围。