Android/Google +如何知道用户的朋友是否安装了应用程序

Raz*_*Raz 7 android google-plus

我正在尝试检索已安装当前应用程序的用户圈中的人员.

我使用了SDK中提供的示例应用程序"PlusSampleActivity",并成功设法获取用户圈子中所有人的列表.但是,如果此人已安装该应用程序,我不知道如何获取.可用的文件似乎非常有限......

我发现的是 https://developer.android.com/reference/com/google/android/gms/plus/model/people/Person.html 我正在使用以下功能,但这总是返回false.(我已经创建了一个安装了该应用的用户,我可以在使用Google+访问该网站上的用户个人资料时看到此信息)

是否应该使用其他API?还是某种方式来调试这个更好?

public abstract boolean isHasApp()

如果为"true",则表示此人已安装了发出请求的应用程序,并已选择将此安装状态公开给调用方.值"false"表示无法确定安装状态(未安装或者此人已选择将此信息保密为私有).

更新似乎hasapp字段甚至没有包含在响应中?在下面的链接上尝试API时,我从未成功将响应包含在响应中...任何建议我可能做错了什么? https://developers.google.com/apis-explorer/#p/plus/v1/plus.people.get

(我在Google网上论坛上发布了同样的问题,这里)

Ian*_*ber 3

不幸的是,hasApp 字段没有填充到响应中 - 它实际上是旧 API 的遗留字段。最好的匹配方法是跟踪数据库中已安装用户的 Google ID,并将其与 people.list 响应中的 ID 进行比较。

文档应该尽快更新以反映这一点,对于造成的混乱表示歉意!

  • 感谢您的回复,但这确实是一个必需的功能!您建议的方式并不能让用户选择他的哪些朋友可以看到他已经安装了该应用程序(当他授予访问权限时他会这样做) - 因此该应用程序将与 Google+ 不同......真的不好。 (3认同)