【问题标题】:Google Play Game Services: invite player dialog lacks search by nameGoogle Play 游戏服务:邀请玩家对话框缺少按名称搜索
【发布时间】:2013-06-19 22:23:51
【问题描述】:

我正在使用 Google Play 游戏服务 API (GamesClient.getSelectPlayersIntent) 提供的股票“选择玩家”对话框。

对话框很棒,但它缺少一个非常重要的功能:我无法通过名字搜索朋友/对手,因此我必须盯着我圈子里那无穷无尽的人列表。

也许我错过了明显的,但我找不到任何搜索功能。没有菜单项,没有文本输入字段...是否有一些未记录的意图附加参数来启用该功能?还是我必须创建自己的带有搜索功能的对话框?

是否有允许这种搜索的替代对话框?

【问题讨论】:

    标签: android google-play-games


    【解决方案1】:

    如果你看这里GGS demo page 你会看到

    您可以使用游戏服务提供的内置玩家选择器 UI 或实现您自己的自定义 UI。要启动内置的玩家选择器 UI,请使用 GamesClient.getSelectPlayersIntent() 返回的 Intent:

    在查看 Google GamesClient documentation 此处的 GamesClient 文档时,您需要使用

    public void loadInvitablePlayers (OnPlayersLoadedListener listener, int pageSize, boolean forceReload)

    加载当前登录玩家可以进入的玩家初始页面 邀请多人游戏,按名称的字母顺序排列。

    结果被传递给主线程上的给定监听器。如果 在结果准备好之前调用 disconnect() 它不会 发表。参数 listener 监听时调用的监听器 加载完成。在主线程上调用侦听器。页面大小 请求此初始页面的条目数。请注意,如果 缓存数据已经存在,返回的缓冲区可能包含超过 这个大小,但如果 集合包含足够的记录。这必须是介于 1 和 25. forceReload 如果为true,此调用将清除所有本地缓存​​的数据并尝试从服务器获取最新数据。这个会 通常用于诸如用户启动的刷新之类的事情。 通常,这应该设置为 false 以获得数据的优势 缓存。

    然后决定您希望您的 UI 如何使用侦听器中返回的 PlayerBuffer 对象。

    【讨论】:

    • 我猜谷歌需要在这方面做更多的工作。最佳解决方案是为该方法调用提供一个名称/圈子过滤器:-( 无论如何,我已经习惯了用那一长串我不认识的人进行测试。Google+ 以神秘的方式工作
    • 没错,我猜他们只是想提醒我们,我们使用 Google+ 跟踪了多少人,作为应用程序的潜在受邀者。
    猜你喜欢
    • 2013-05-28
    • 2016-07-04
    • 2016-12-13
    • 2018-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-30
    • 2015-05-31
    相关资源
    最近更新 更多