2016-12-27 1 views
1

Das beste Beispiel für das, was ich versuchen möchte, kann durch das Verhalten der SimCity-App beschrieben werden (und ich bin mir sicher, viele andere, die ich nicht kenne Google Anmelden für Google Play-Spiele). Sobald Sie sich bei simcity in Google Play Games anmelden, wird jedes Mal, wenn Sie die App starten, ein Popup angezeigt, das oben auf dem Bildschirm angezeigt wird und "Welcome ** user *" lautet. Jetzt in meiner App habe ich alle Google-Dokumentation (https://developers.google.com/games/services/android/init) und verschiedene andere Quellen gefolgt, und das einzige Mal, dass ich das "Willkommen" Popup ist, nachdem der Benutzer beim ersten Mal angemeldet ist. Der einzige Code, den ich in onResume und onStart habe, ist mGoogleApi.connect(), das ist genau der gleiche Code, den ich habe, wenn die Anmeldeschaltfläche das erste Mal angeklickt wird und der Begrüßungsdialog angezeigt wird.Zeige Google Play Games Begrüßungsdialog bei allen App-Starts

Meine Frage ist diese: Fehle ich etwas mit, wie man diesen Dialog angezeigt bekommt, oder sind apps wie simcity irgendwie mich abmelden jedes Mal wenn ich die App schließe und dann wieder wenn ich es wieder öffne? (Für mich scheint das keinen Sinn zu ergeben, aber ist zur Zeit die einzige logische Erklärung, die ich mir vorstellen kann.)

Um 100% genau zu sein, ist das Bild unten genau das, wonach ich suche.

enter image description here

Antwort

2

Die Willkommensnachricht wird nicht bei jedem Aufruf zur Anmeldung oder Authentifizierung angezeigt. Wenn der Benutzer "kürzlich" in der App angemeldet wurde, wird die Nachricht nicht angezeigt. Dies ist ein wenig verwirrend, da die Verbindung im Hintergrund erfolgt. Sie können bestätigen, dass Sie verbunden sind, indem Sie mGoogleAPI.isConnected() im Code aufrufen.

Ich zitierte "vor kurzem", da es tatsächlich von den Play Game Services bestimmt wird. Es ist entworfen, um es weniger ablenkend für den Benutzer zu machen, so dass sie sich auf das eigentliche Spiel gegen eine Angabe konzentrieren, dass sie angemeldet sind.

+0

Diese Antwort sollte akzeptiert werden - Genau so funktioniert das Banner. Sie können versuchen, dies zu überprüfen, indem Sie die Systemuhr etwa einen Tag nach vorne stellen und die App erneut öffnen. – tmtrademark

0

Sie können ein Top-Level repräsentiert Preference mit PreferenceScreen, die, um zu versuchen, die die Wurzel einer Präferenzhierarchie ist. A PreferenceActivity zeigt auf eine Instanz dieser Klasse, um die Einstellungen anzuzeigen.

Hier ist ein Beispiel XML Layout eines PreferenceScreen:

<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> 

Für eine ausführlichere Informationen, können Sie die vollständige documentation überprüfen. Darüber hinaus könnte auch die Lösung in diesem SO post helfen.

+0

Ich bin nicht genau sicher, wie das mir helfen würde – ez4nick

Verwandte Themen