【问题标题】:Show Google Play Games Welcome Dialog on all app launches在所有应用启动时显示 Google Play 游戏欢迎对话框
【发布时间】:2017-05-12 04:51:22
【问题描述】:

我尝试尝试的最佳示例可以通过 simcity 应用程序的行为来描述(我敢肯定,我可能不知道的许多其他人也使用谷歌登录来玩谷歌游戏)。一旦您在 simcity 上登录 google 玩游戏,从那时起每次您启动应用程序时都会显示一个从屏幕顶部滑动的弹出窗口,上面写着“欢迎 **用户 *”。现在,在我的应用程序中,我已经关注了所有 google 的文档 (https://developers.google.com/games/services/android/init) 和其他各种来源,我唯一一次看到“欢迎”弹出窗口是在用户第一次登录之后。我在onResumeonStart 中的唯一代码是mGoogleApi.connect(),这与我第一次单击登录按钮并显示欢迎对话框时的代码完全相同。

我的问题是:我是否缺少有关如何显示此对话框的内容,或者 simcity 等应用程序是否会在我每次关闭应用程序时以某种方式让我退出,然后在我再次打开它时重新登录? (对我来说这似乎没有意义,但目前是我能想到的唯一合乎逻辑的解释。)

为了 100% 准确,下图正是我想要的。

【问题讨论】:

    标签: android google-play-games


    【解决方案1】:

    欢迎消息不会在每次调用登录或验证时显示。如果用户“最近”登录到应用程序,则不会显示该消息。这有点令人困惑,因为连接是静默发生的。您可以通过在代码中调用 mGoogleAPI.isConnected() 来确认您已连接。

    我引用了“最近”,因为它实际上是由 Play 游戏服务确定的。它旨在减少对用户的干扰,因此他们专注于实际游戏而不是他们已登录的指示。

    【讨论】:

    • 这个答案应该被接受——这正是横幅的工作方式。您可以尝试通过将系统时钟提前一天左右并重新打开您的应用来验证这一点。
    【解决方案2】:

    您可能想尝试使用PreferenceScreen,它表示顶级Preference,它是首选项层次结构的根。 PreferenceActivity 指向此类的一个实例以显示首选项。

    这是PreferenceScreen 的 XML 布局示例:

    <PreferenceScreen
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:key="first_preferencescreen">
        <CheckBoxPreference
                android:key="wifi enabled"
                android:title="WiFi" />
        <PreferenceScreen
                android:key="second_preferencescreen"
                android:title="WiFi settings">
            <CheckBoxPreference
                    android:key="prefer wifi"
                    android:title="Prefer WiFi" />
            ... other preferences here ...
        </PreferenceScreen>
    </PreferenceScreen> 
    

    如需更详细的信息,您可以查看完整的documentation。此外,SO post 中给出的解决方案也可能有所帮助。

    【讨论】:

    • 我不确定这对我有什么帮助
    猜你喜欢
    • 2016-08-09
    • 1970-01-01
    • 1970-01-01
    • 2017-09-04
    • 2013-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-04
    相关资源
    最近更新 更多