Mit Amazon anmelden – Erste Schritte – Anleitung für Android
Mit Amazon anmelden: Erste Schritte-Anleitung für Android
Copyright © 2016 Amazon.com, Inc. oder seine Tochtergesellschaften. Alle Rechte vorbehalten. Amazon und das Amazon-Logo sind Marken von Amazon.com, Inc. oder seinen Tochtergesellschaften. Alle anderen Marken, die nicht Eigentum von Amazon sind, sind Eigentum ihrer jeweiligen Inhaber.
Erste Schritte für Android
In dieser Anleitung zeigen wir Ihnen, wie Sie Ihrer Android-App die Funktion „Login mit Amazon“ hinzufügen. Nach Abschluss dieser Anleitung sollte Ihre App über eine funktionierende Schaltfläche „Login mit Amazon“ verfügen, mit der sich Benutzer mit ihren Amazon-Anmeldeinformationen anmelden können.
Installieren der Android Developer Tools
Mit dem Login with Amazon SDK für Android können Sie Login with Amazon zu Ihrer Android-Anwendung hinzufügen. Wir empfehlen Ihnen, das Login with Amazon SDK für Android von developer.amazon.com mit Android Studio zu verwenden. Sie können jedoch auch das Eclipse-Plugin mit ADT verwenden. Schritte zur Installation von Android Studio und zur Einrichtung des Android SDK finden Sie unter Holen Sie sich das Android SDK auf developer.android.com.
Wenn das Android SDK installiert ist, finden Sie die SDK-Manager Anwendung in Ihrer Android-Installation. Um für Login mit Amazon zu entwickeln, müssen Sie den SDK-Manager verwenden, um die SDK-Plattform für Android 2.2 oder höher (API-Version 8) zu installieren. Siehe Hinzufügen von SDK-Paketen auf developer.android.com für weitere Informationen zur Verwendung des SDK
Richten Sie nach der Installation des SDK ein Android Virtual Device (AVD) zum Ausführen Ihrer Apps ein. Siehe Verwaltung Virtuelle Geräte Anweisungen zum Einrichten eines virtuellen Geräts finden Sie auf developer.android.com.
Wenn Ihre Entwicklungsumgebung eingerichtet ist, können Sie Installieren Sie das Login mit Amazon SDK für Android or Führen Sie das S ausampdie App, wie unten beschrieben.
Installieren Sie das Login mit Amazon SDK für Android
Das Login mit Amazon SDK für Android wird in zwei Paketen geliefert. Das erste enthält die Android-Bibliothek und die zugehörige Dokumentation. Das zweite enthältampAnwendung, die es einem Benutzer ermöglicht, sich anzumelden und seine Profile Daten.
Wenn Sie das Android SDK oder die Android Development Tools noch nicht installiert haben, lesen Sie die Installieren die Android Developer Tools Abschnitt oben.
- Herunterladen Reißverschluss und extrahieren Sie die files in ein Verzeichnis auf Ihrer Festplatte.
Sie sollten eine sehen Dokument und ein Bibliothek Unterverzeichnis. - Offen doc/index.html Zu view die Anmeldung mit Amazon Android API
- Sehen Installieren Sie die Anmeldung mit der Amazon-Bibliothek, für Anweisungen zum Hinzufügen der Bibliothek und Dokumentation zu einem Android
Wenn das Login mit Amazon SDK für Android installiert ist, können Sie Neuen Login bei Amazon erstellen Projekt, nach Registrierung bei Login bei Amazon .
Führen Sie das S ausampdie App
Um den s laufen zu lassenampDateianwendung, importieren Sie dieample in einen AndroidStudio-Arbeitsbereich (wenn Sie Eclipse verwenden, müssen Sie dem Arbeitsbereich auch einen benutzerdefinierten Debug-Keystore hinzufügen. Weitere Informationen finden Sie in der Fügen Sie das benutzerdefinierte Debug hinzu Schlüsselspeicher in Eclipse Abschnitt weiter unten). Der API-Schlüssel, den der sampDie Anwendung erfordert, dass der Arbeitsbereich den mit dem s gelieferten Schlüsselspeicher verwendet.ampWenn der benutzerdefinierte Schlüsselspeicher nicht installiert ist, können sich Benutzer nicht mit dem s anmelden.ample. Der Schlüsselspeicher wird automatisch abgerufen, wenn Sie AndroidStudio verwenden.
- Herunterladen SampleLoginWithAmazonAppForAndroid-src.zip und extrahieren Sie die files in ein Verzeichnis auf Ihrer Festplatte
- Starten Sie Android Studio und wählen Sie Öffnen Sie ein vorhandenes Android Studio-Projekt
- Navigieren Sie zu SampleLoginWithAmazonApp Verzeichnis, das nach dem Entpacken der heruntergeladenen Zip-Datei erhalten wurde file im Schritt
- Aus dem Bauen auf Projekt erstellenund warten Sie, bis das Projekt
- Aus dem Laufen auf Laufen und klicken Sie dann auf das SampleLoginWithAmazonApp.
- Wählen Sie den Emulator oder das verbundene Android-Gerät aus und klicken Sie auf Laufen.
Fügen Sie den benutzerdefinierten Debug-Schlüsselspeicher in Eclipse hinzu
Wenn Sie Eclipse verwenden, folgen Sie den nachstehenden Anweisungen, um den benutzerdefinierten Debug-Keystore hinzuzufügen:
- Im Einstellungen Wählen Sie im Dialogfeld Android Und Bauen.
- Neben Brauch Debuggen des Keystoresauf Durchsuchen.
- Navigieren Sie zum sample app-Verzeichnis und wählen Sie 3p.keystoreund dann auf OK.
Registrierung bei Login bei Amazon
Bevor Sie sich bei einem webWebsite oder in einer mobilen App müssen Sie eine Anwendung mit Login mit Amazon registrieren. Ihre Anwendung Login mit Amazon ist die Registrierung, die grundlegende Informationen über Ihr Unternehmen sowie Informationen über jeden enthält webWebsite oder mobile App, die Sie erstellen und die Anmeldung mit Amazon unterstützt. Diese Geschäftsinformationen werden den Benutzern jedes Mal angezeigt, wenn sie sich auf Ihrer Website mit Amazon anmelden. webSite oder mobile App. Benutzer sehen den Namen Ihrer Anwendung, Ihr Logo und einen Link zu Ihrer Datenschutzrichtlinie. Diese Schritte zeigen, wie Sie eine Anwendung zum Anmelden mit Amazon registrieren und diesem Konto eine Android-App hinzufügen.
Siehe folgende Themen:
- Registrieren Sie Ihr Login bei Amazon Application
- Registrieren Sie Ihre Android-App
- Fügen Sie eine Android-App für den Amazon Appstore hinzu
- Eine Android-App ohne Appstore hinzufügen
- Android App Signaturen und API-Schlüssel
- Bestimmen einer Android-App-Signatur
- Abrufen eines Android-API-Schlüssels
Registrieren Sie Ihr Login bei Amazon Application
- Gehe zu https://login.amazon.com.
- Wenn Sie sich bereits bei Amazon angemeldet haben, klicken Sie auf App-KonsoleKlicken Sie andernfalls auf Melden Sie sich an. Sie werden zu Seller Central weitergeleitet, wo die Anwendungsregistrierung für die Anmeldung mit erfolgt. Wenn Sie Seller Central zum ersten Mal verwenden, werden Sie aufgefordert, ein Seller Central-Konto einzurichten.
- Klicken Neue Anwendung registrieren. Der Registrieren Sie Ihre Anwendung Formular wird angezeigt:
a. Im Registrieren Sie Ihre Anwendung Geben Sie im Formular Name und ein Beschreibung für Ihre Bewerbung.
Der Name ist der Name, der auf dem Zustimmungsbildschirm angezeigt wird, wenn Benutzer zustimmen, Informationen mit Ihrer Anwendung zu teilen. Dieser Name gilt für Android, iOS und webSite-Versionen Ihrer Anwendung.
b. Geben Sie einen Datenschutzhinweis URL für Ihre Bewerbung
Der Datenschutzhinweis URL ist der Ort der Datenschutzrichtlinie Ihres Unternehmens oder Ihrer Anwendung (zampich, http://www.example.com/privacy.html). Dieser Link wird den Benutzern auf dem Zustimmungsbildschirm angezeigt.
c. Wenn Sie ein Logobild für Ihre Anwendung, klicken Sie auf Durchsuchen und suchen Sie das entsprechende Bild.
Dieses Logo wird auf dem Anmelde- und Zustimmungsbildschirm angezeigt, um Ihr Unternehmen zu repräsentieren oder webWebsite. Das Logo wird auf eine Höhe von 50 Pixel verkleinert, wenn es höher als 50 Pixel ist; es gibt keine Beschränkung für die Breite des Logos - Klicken Speichern. DeinampDie Registrierung sollte ungefähr so aussehen:
Nachdem Sie die grundlegenden Anwendungseinstellungen gespeichert haben, können Sie Einstellungen für bestimmte webWebsites und mobile Apps, die dieses Login mit Amazon-Konto verwenden.
Registrieren Sie Ihre Android-App
Um eine Android-App zu registrieren, haben Sie die Möglichkeit, eine App über den Amazon Appstore zu registrieren (Fügen Sie eine Android-App für den Amazon Appstore hinzu, S. 8) oder direkt mit Login mit Amazon (Fügen Sie ein Android hinzu App ohne Appstore, S. 9). Wenn Ihre App registriert ist, haben Sie Zugriff auf einen API-Schlüssel, der Ihrer App Zugriff auf den Autorisierungsdienst „Anmelden mit Amazon“ gewährt.
Notiz: Wenn Sie Amazon Device Messaging in Ihrer Android-App verwenden möchten, wenden Sie sich bitte an lwa- support@amazon.com mit:
- Die E-Mail-Adresse des Amazon-Kontos, mit dem Sie sich für die Anmeldung bei Amazon registriert haben.
- Die E-Mail-Adresse des Amazon-Kontos, mit dem Sie sich für den Amazon Appstore angemeldet haben (falls abweichend).
- Der Name in Ihrem Seller Central-Konto. (Klicken Sie in Seller Central auf Einstellungen > Kontoinformationen > Verkäuferinformationenund verwenden Sie die Anzeigename).
- Der Name in Ihrem Amazon Appstore-Entwicklerkonto. (Klicken Sie auf der Mobile App Distribution-Website auf Einstellungen > Unternehmen Profile und verwenden Sie die Name des Entwicklers oder Firmenname).
Fügen Sie eine Android-App für den Amazon Appstore hinzu
Mit den folgenden Schritten fügen Sie Ihrem „Login mit Amazon“-Konto eine Amazon Appstore-App hinzu:
- Klicken Sie im Anwendungsbildschirm auf Android-Einstellungen. Wenn Sie bereits eine Android-App registriert haben, suchen Sie nach dem API-Schlüssel hinzufügen Schaltfläche im Android-Einstellungen
Der Details zur Android-Anwendung Formular wird angezeigt: - Wählen Ja als Antwort auf die Frage „Wird diese Anwendung über den Amazon Appstore vertrieben?“
- Geben Sie den Etikett Ihrer Android-App. Dies muss nicht der offizielle Name Ihrer App sein. Es identifiziert lediglich diese bestimmte Android-App unter den Apps und webWebsites, die für Ihre Anmeldung mit Amazon-Anwendung registriert sind.
- Fügen Sie Ihre Amazon Appstore-ID.
- Wenn Sie Ihre App selbst signiert haben, fügen Sie Informationen zur Selbstsignierung hinzu. Auf diese Weise können Sie während der Entwicklung einen API-Schlüssel erhalten, ohne den Appstore direkt zu verwenden:
a. Wenn Ihre App nicht über den Amazon Appstore signiert ist, wählen Sie „Ja“ als Antwort auf die Frage „Ist diese Anwendung selbstsigniert?“
Der Details zur Android-Anwendung Das Formular wird erweitert:
b. Geben Sie Ihren Paketnamen.
Dies muss mit dem Paketnamen Ihres Android-Projekts übereinstimmen. Um den Paketnamen Ihres Android-Projekts zu ermitteln, öffnen Sie das Projekt im Android-Entwicklertool Ihrer Wahl.
Offen AndroidManifest.XML im Paket-Explorer und wählen Sie die Manifest Registerkarte. Der erste Eintrag ist der Paketname.
c. Geben Sie die App ein Unterschrift.
Dies ist ein SHA-256-Hashwert, der zur Überprüfung Ihrer Anwendung verwendet wird. Die Signatur muss in Form von 32 durch Doppelpunkte getrennten Hexadezimalpaaren vorliegen (z. B.ampauf: 01:23:45:67:89:ab:cd:ef:01:23:45:67:89:ab:cd:ef:01:23:45:67:89:ab:cd:ef:01: 3:45:67:89:a b:cd:ef). Sehen Android App Signaturen und API-Schlüssel für Schritte, die Sie zum Extrahieren der Signatur aus Ihrem Projekt verwenden können. - Klicken Speichern.
Wenn verschiedene Versionen Ihrer App unterschiedliche Signaturen oder Paketnamen haben, z. B. für eine oder mehrere Testversionen und eine Produktionsversion, benötigt jede Version einen eigenen API-Schlüssel. Aus dem Android-Einstellungen Klicken Sie in Ihrer App auf API-Schlüssel hinzufügen Klicken Sie auf die Schaltfläche, um zusätzliche Schlüssel für Ihre App zu erstellen (einen pro Version).
Android App Signaturen und API-Schlüssel
Die App-Signatur ist ein SHA-256-Hashwert, der beim Erstellen auf jede Android-App angewendet wird. Amazon verwendet die App-Signatur, um Ihren API-Schlüssel zu erstellen. Der API-Schlüssel ermöglicht es Amazon-Diensten, Ihre App zu erkennen. Wenn Sie den Amazon Appstore zum Signieren Ihrer App verwenden, wird der API-Schlüssel automatisch bereitgestellt. Wenn Sie den Amazon Appstore nicht verwenden, müssen Sie Ihren API-Schlüssel manuell verwalten.
App-Signaturen werden in einem Keystore gespeichert. Im Allgemeinen gibt es für Android-Apps einen Debug-Keystore und einen Release-Keystore. Der Debug-Keystore wird vom Android Development Tools-Plugin für Eclipse erstellt und standardmäßig verwendet. Sie finden den Speicherort des Debug-Keystores in Eclipse, indem Sie auf Fensterund wählen Sie dann Einstellungen > Android > Erstellen. Von diesem Bildschirm aus können Sie auch Ihren eigenen Debug-Keystore hinzufügen. Für Android Studio können Sie über den Bauen wählen Sie Build-Typen bearbeiten, dann gehen Sie zu Unterzeichnung und suchen Sie den Debug-Keystore im Speichern File Feld.
Ein Release-Keystore wird normalerweise erstellt, wenn Sie Ihre Android-App exportieren, um ein signiertes APK zu erstellen file.
Wenn Sie einen neuen Release-Keystore erstellen, wählen Sie im Exportvorgang dessen Speicherort aus.
Standardmäßig wird es am selben Speicherort wie Ihr Standard-Debug-KeyStore abgelegt.
Wenn Sie Ihre App während der Entwicklung mit der Debug-Signatur registriert haben, müssen Sie Ihrer Anwendung eine neue Android-Einstellung hinzufügen, wenn Sie bereit sind, die App zu veröffentlichen. Die neue App-Einstellung muss die Signatur aus dem Release-Keystore verwenden.
Sehen Signieren Ihrer Anwendungen Weitere Informationen finden Sie unter developer.android.com.
Bestimmen Sie die Android-App-Signatur
- Wenn Sie eine signierte APK haben file:
a. Entpacken Sie die APK file und extrahieren ZERTIFIKAT.RSA. (Sie können die APK-Erweiterung bei Bedarf in ZIP umbenennen).
b. Führen Sie in der Befehlszeile Folgendes aus:keytool -printcert -file ZERTIFIKAT.RSA Keytoolis befindet sich im bin Verzeichnis Ihrer Java-Installation.
- Wenn Sie einen Schlüsselspeicher haben file:
a. Führen Sie in der Befehlszeile Folgendes aus:keytool -list -v -alias -SchlüsselspeicherfileName> Schlüsselwerkzeug befindet sich im Bin-Verzeichnis Ihrer Java-Installation. Der Alias ist der Name des Schlüssels, mit dem die App signiert wird.
b. Geben Sie das Passwort für den Schlüssel ein und drücken Sie Eingeben. - Unter Zertifikatsfingerabdrücke, kopieren Sie die SHA256 Wert.
Abrufen des Android-API-Schlüssels
Wenn Sie eine Android-Einstellung registriert und eine App-Signatur angegeben haben, können Sie den API-Schlüssel von der Registrierungsseite für Ihre Anwendung „Login mit Amazon“ abrufen. Sie müssen diesen API-Schlüssel in ein file in Ihrem Android-Projekt. Bis Sie dies tun, ist die App nicht berechtigt, mit dem Autorisierungsdienst „Login mit Amazon“ zu kommunizieren.
- Gehe zu https://login.amazon.com.
- Klicken App-Konsole.
- Im Anwendungen Wählen Sie im linken Feld Ihre
- Finden Sie Ihre Android-App unter dem Android-Einstellungen (Wenn Sie noch keine Android-App registriert haben, siehe Fügen Sie eine Android-App für den Amazon Appstore hinzu).
- Klicken API-Schlüsselwert generieren. In einem Popup-Fenster wird Ihr API-Schlüssel angezeigt. Um den Schlüssel zu kopieren, klicken Sie auf Alles auswählen zur Auswahl des gesamten
Notiz: Der API-Schlüsselwert basiert teilweise auf dem Zeitpunkt seiner Generierung. Daher können nachfolgende API-Schlüsselwerte, die Sie generieren, vom Original abweichen. Sie können jeden dieser API-Schlüsselwerte in Ihrer App verwenden, da sie alle gültig sind. - Sehen Fügen Sie Ihren API-Schlüssel zu Ihrem Projekt hinzu für Anweisungen zum Hinzufügen des API-Schlüssels zu Ihrem Android
Erstellen eines Logins mit Amazon Project
In diesem Abschnitt erfahren Sie, wie Sie ein neues Android-Projekt für die Anmeldung mit Amazon erstellen, das Projekt konfigurieren und dem Projekt Code hinzufügen, um einen Benutzer mit der Anmeldung mit Amazon anzumelden. Wir beschreiben die Schritte für Android Studio, aber Sie können analoge Schritte auf jede IDE oder jedes Android-Entwicklungstool Ihrer Wahl anwenden.
Siehe folgende Themen:
- Erstellen Sie ein neues Login mit Amazon Project
- Installieren Sie die Anmeldung mit Amazon Library
- Aktivieren Sie Content Assist für die Anmeldung bei Amazon Library
- Legen Sie Netzwerkberechtigungen für Ihre App fest
- Fügen Sie Ihren API-Schlüssel zu Ihrem Projekt hinzu
- Entfernen Sie das Sample App Custom Debug Keystore
- Behandeln von Konfigurationsänderungen für Ihre Aktivität
- Fügen Sie Ihrem Projekt eine Autorisierungsaktivität hinzu
- Fügen Sie Ihrer App einen Login mit Amazon Button hinzu
- Behandeln Sie die Anmeldeschaltfläche und erhalten Sie Profile Daten
- Überprüfen Sie beim Start, ob Benutzer angemeldet sind
- Löschen Sie den Autorisierungsstatus und melden Sie einen Benutzer ab
- Amazon Authorization Manager-Methoden synchron aufrufen
Erstellen Sie ein neues Login mit Amazon Project
Wenn Sie noch kein App-Projekt für die Verwendung von „Login mit Amazon“ haben, folgen Sie den nachstehenden Anweisungen, um eines zu erstellen. Wenn Sie eine vorhandene App haben, fahren Sie mit fort. Installieren Sie die Anmeldung mit Amazon Library .
- Start Android-Entwicklungstool.
- Aus dem File wählen Sie Neu Und Projekt.
- Geben Sie ein ein Anwendungsname Und Name der Firma für Ihre
- Geben Sie den Anwendung und Firmenname entspricht dem Paketnamen, den Sie bei der Registrierung Ihrer App bei Login with Amazon gewählt haben.
Wenn Sie Ihre App noch nicht registriert haben, wählen Sie eine Paketname und folgen Sie dann den Anweisungen in der Registrierung bei Login bei Amazon Abschnitt, nachdem Sie Ihr Projekt erstellt haben. Wenn der Paketname Ihrer App nicht mit dem registrierten Paketnamen übereinstimmt, sind Ihre Login-Aufrufe mit Amazon nicht erfolgreich. - Wählen Sie ein Mindestens erforderliches SDK von API 8: Android 2 (Froyo) oder höher, und klicken Sie auf Nächste.
- Wählen Sie den Aktivitätstyp aus, den Sie erstellen möchten, und klicken Sie auf Nächste.
- Füllen Sie die relevanten Details aus und klicken Sie auf Beenden.
Sie haben nun ein neues Projekt in Ihrem Arbeitsbereich, mit dem Sie sich bei Amazon anmelden können.
Installieren Sie die Anmeldung mit Amazon Library
Wenn Sie das Login mit Amazon SDK für Android noch nicht heruntergeladen haben, siehe Installieren Sie den Login mit Amazon SDK für Android (Seite 4).
- Öffnen Sie Ihr Projekt in den Android Developer Tools. Projekt-Explorer, Klicken Sie mit der rechten Maustaste auf Projekt.
- Wenn ein Ordner mit dem Namen Bibliotheken ist noch nicht vorhanden, erstellen
- Kopieren Sie die login-mit-amazon-sdk.jar file aus dem File Systemund fügen Sie es dann in das Bibliotheken Verzeichnis unter Ihrem Projekt/Ihrer App.
- Klicken Sie mit der rechten Maustaste login-mit-amazon-sdk.jarund aktivieren Sie das Kontrollkästchen Als Bibliothek hinzufügen
Content Assist für die Anmeldung mit Amazon Library in Eclipse aktivieren
Um die Eclipse-Inhaltshilfe in einem Android-Projekt zu aktivieren, ist die Verwendung eines .Eigenschaften fileWeitere Informationen zur Inhaltsunterstützung finden Sie unter Inhalts-/Code-Unterstützung onhelp.eclipse.org.
Um die Eclipse-Inhaltshilfe in einem Android-Projekt zu aktivieren, ist die Verwendung eines .Eigenschaften fileWeitere Informationen zur Inhaltsunterstützung finden Sie unter Inhalts-/Code-Unterstützung onhelp.eclipse.org.
- In Windows Explorer, navigieren Sie zu Dokumente Ordner für die Anmeldung mit Amazon SDK für Android und kopieren Sie den Ordner in den
- Öffnen Sie Ihr Projekt und gehen Sie zu Paket-Explorer und wählen Sie die Bibliotheken Klicken Bearbeiten aus dem Hauptmenü und wählen Sie PasteSie sollten nun eine Bibliotheken\Dokumente Verzeichnis.
- Wählen Sie die Bibliotheken Klicken File aus dem Hauptmenü und wählen Sie Neu UndFile.
- Im Neu File geben Sie login-mit-amazon-sdk.jar.properties und klicken Sie auf Beenden.
- Eclipse sollte sich öffnen login-mit-amazon-sdk.jar.properties im Texteditor. Fügen Sie im Texteditor die folgende Zeile zum file:
doc=Dokumente - Aus dem File auf Speichern.
- Möglicherweise müssen Sie Eclipse neu starten, damit die Änderungen wirksam werden
Legen Sie Netzwerkberechtigungen für Ihre App fest
Damit Ihre App die Anmeldung bei Amazon nutzen kann, muss sie auf das Internet und Netzwerkstatusinformationen zugreifen. Ihre App muss diese Berechtigungen in Ihrem Android-Manifest angeben, falls dies nicht bereits der Fall ist.
NOTIZ: Die folgenden Schritte beziehen sich speziell auf das Hinzufügen der Berechtigungen in Eclipse. Wenn Sie Android Studio oder eine andere IDE verwenden, können Sie alle unten aufgeführten nummerierten Schritte überspringen. Kopieren Sie stattdessen die unter dem Screenshot angezeigten Codezeilen und fügen Sie sie in das AndroidManifest.xml file, außerhalb des Anwendungsblocks.
- In Paket Forscher, doppelklicken Sie xml.
- Auf der Berechtigungen auf Hinzufügen.
- Wählen Verwendet die Erlaubnis und klicken Sie auf OK.
- Rechts von Berechtigungen, finden Sie die Attribute für die Nutzungsberechtigung
- Im Name Box, geben Sie ein Erlaubnis. INTERNET oder wählen Sie es aus der Dropdown-Liste aus.
- Auf der Berechtigungen auf Hinzufügen
- Wählen Verwendet die Erlaubnis und klicken Sie auf OK.
- Im Name Box, geben Sie ein Berechtigung.ACCESS_NETWORK_STATE oder wählen Sie es aus der Dropdown-Liste
- Aus dem File auf Speichern.
Ihre Manifestberechtigungen sollten jetzt die folgenden Werte haben:
Im AndroidManifest.xml Auf der Registerkarte „Manifest“ sollten Sie nun die folgenden Einträge unter dem Manifestelement sehen:
Fügen Sie Ihren API-Schlüssel zu Ihrem Projekt hinzu
Wenn Sie Ihre Android-Anwendung bei Login with Amazon registrieren, wird Ihnen ein API-Schlüssel zugewiesen. Dies ist eine Kennung, die der Amazon Authorization Manager verwendet, um Ihre Anwendung beim Autorisierungsdienst Login with Amazon zu identifizieren. Wenn Sie den Amazon Appstore zum Signieren Ihrer App verwenden, stellt der Appstore den API-Schlüssel automatisch bereit. Wenn Sie den Amazon Appstore nicht verwenden, lädt der Amazon Authorization Manager diesen Wert zur Laufzeit aus dem api_key.txt file im Vermögenswerte Verzeichnis.
- Wenn Sie Ihren API-Schlüssel noch nicht haben, folgen Sie den Anweisungen in Abrufen des Android-API-Schlüssels (Seite 11).
- Öffnen Sie Ihr ADT-Projekt und wählen Sie File auf Neu und wählen Sie Unbenannter Text File. Sie sollten nun ein Editorfenster für einen Text haben file namens Ohne Titel 1. Fügen Sie Ihren API-Schlüssel zum Text hinzu
- Aus dem File auf Speichern unter.
- Im Speichern unter Wählen Sie im Dialogfeld Vermögenswerte Verzeichnis Ihres Projekts als übergeordneten Ordner. Für File Name, eingeben txt.
Entfernen Sie das Sample App Custom Debug Keystore
NOTIZ: Dieser Schritt ist nur erforderlich, wenn Sie Eclipse verwenden. Wenn Sie Android Studio verwenden, überspringen Sie diesen Abschnitt.
Wenn Sie die App „Login mit Amazon für Android“ installiert haben,ampWenn Sie die Anwendung in denselben Arbeitsbereich einfügen, den Sie für Ihre Android-App verwenden, haben Sie möglicherweise einen benutzerdefinierten Debug-Keystore für den Arbeitsbereich festgelegt. Sie müssen den benutzerdefinierten Debug-Keystore löschen, um Ihren eigenen API-Schlüssel verwenden zu können.
- Klicken Sie im Hauptmenü auf Fenster und wählen Sie Einstellungen.
- Im Einstellungen Wählen Sie im Dialogfeld Android Und Bauen.
- Löschen Sie die Brauch Debug-Schlüsselspeicher
- Klicken OK.
Behandeln von Konfigurationsänderungen für Ihre Aktivität
Wenn ein Benutzer während der Anmeldung die Bildschirmausrichtung oder den Tastaturstatus des Geräts ändert, wird ein Neustart der aktuellen Aktivität veranlasst. Dieser Neustart schließt den Anmeldebildschirm unerwartet. Um dies zu verhindern, sollten Sie die Aktivität, die die Autorisierungsmethode verwendet, so einstellen, dass diese Konfigurationsänderungen manuell verarbeitet werden. Dadurch wird ein Neustart der Aktivität verhindert.
- In Paket Forscher, doppelklicken Sie xml.
- Im Anwendung Suchen Sie im Abschnitt die Aktivität, die für die Anmeldung mit Amazon zuständig ist (z. B.ampich, Hauptaktivität).
- Fügen Sie der Aktivität, die Sie in Schritt 2 gefunden haben, das folgende Attribut hinzu:
android:configChanges=”Tastatur|keyboardHidden|Ausrichtung” Oder für API 13 oder höher:
android:configChanges=”Tastatur|Tastatur ausgeblendet|Ausrichtung|Bildschirmgröße” - Aus dem File auf Speichern
Wenn nun eine Änderung der Tastatur- oder Geräteausrichtung erfolgt, ruft Android den beiKonfigurationsänderung Methode für Ihre Aktivität. Sie müssen diese Funktion nicht implementieren, es sei denn, es gibt einen Aspekt dieser Konfigurationsänderungen, den Sie für Ihre App behandeln möchten
Wenn der Benutzer auf die Schaltfläche „Mit Amazon anmelden“ klickt, startet die API eine web Browser, um dem Benutzer eine Anmelde- und Zustimmungsseite anzuzeigen. Damit diese Browseraktivität funktioniert, müssen Sie die AuthorizationActivity zu Ihrem Manifest hinzufügen.
- In Paket Forscher, doppelklicken Sie xml.
- Im Anwendung Fügen Sie den folgenden Code hinzu und ersetzen Sie „com.example.app“ mit Ihrem Paketnamen für diese App:
<activity android:name=
„com.amazon.identity.auth.device.authorization.AuthorizationActivity“ android:theme=“@android:style/Theme.NoDisplay“ android:allowTaskReparenting=“true“ android:launchMode=“singleTask“>
<action android:name=”android.intent.action.VIEW” />
<Daten
android:host=”com.example.app” android:scheme=”amzn” />
Ihre App. Dieser Abschnitt enthält Schritte zum Herunterladen eines offiziellen „Login mit Amazon“-Bilds und zum Koppeln mit einem Android ImageButton.
- Fügen Sie Ihrer App einen Standard-ImageButton hinzu.
Weitere Informationen zu Android-Schaltflächen und der ImageButton-Klasse finden Sie unter Schaltflächen auf developer.android.com. - Geben Sie Ihrem Button eine ID.
Setzen Sie in der XML-Deklaration der Schaltfläche das Attribut android:id auf @+id/login_with_amazon. Beispiel:ampauf:android:id=”@+id/login_with_amazon” - Wählen Sie ein Schaltflächenbild.
Konsultieren Sie unseren Login bei Amazon Stilrichtlinien für eine Liste von Schaltflächen, die Sie in Ihrer App verwenden können. Laden Sie eine Kopie der LWA_Android.zip file. Extrahieren Sie eine Kopie Ihrer bevorzugten Schaltfläche für jede Bildschirmdichte, die Ihre App unterstützt (xxhdpi, xhdpi, hdpi, mdpi oder tvdpi). Weitere Informationen zur Unterstützung mehrerer Bildschirmdichten in Android finden Sie unter Alternative Layouts im Thema „Unterstützung mehrerer Bildschirme“ auf developer.android.com. - Kopieren Sie das entsprechende Schaltflächenbild files zu Ihrem Projekt.
Für jede Bildschirmdichte, die Sie unterstützen (xhdpi, hdpi, mdpi oder ldpi), kopieren Sie den heruntergeladenen Button in die Auflösung/Zeichenbar Verzeichnis für diese Bildschirmdichte. - Deklarieren Sie das Schaltflächenbild.
Setzen Sie in der XML-Deklaration der Schaltfläche das Attribut android:src auf den Namen der ausgewählten Schaltfläche. Beispiel:ampauf:android:src=”@drawable/btnlwa_gold_loginwithamazon.png” 6. Laden Sie Ihre App und überprüfen Sie, ob die Schaltfläche jetzt ein Bild mit der Aufschrift „Anmelden mit Amazon“ enthält. Sie sollten überprüfen, ob die Schaltfläche für jede von Ihnen unterstützte Bildschirmdichte richtig angezeigt wird.
In diesem Abschnitt wird erläutert, wie Sie die Funktionen „authorize“ und „getPro“ aufrufen.file APIs zum Anmelden eines Benutzers und Abrufen seiner Profile Daten. Dazu gehört das Erstellen eines onClick-Listeners für Ihre Schaltfläche „Mit Amazon anmelden“ in der onCreate-Methode Ihrer App.
- Fügen Sie Login mit Amazon zu Ihrem Android-Projekt hinzu. Siehe Installieren Sie die Anmeldung mit Amazon Library .
- Importieren Sie die Anmeldung mit Amazon API in Ihre Quelle
Um die Anmeldung mit Amazon-API zu importieren, fügen Sie Ihrer Quelle die folgenden Importanweisungen hinzu file:importiere com.amazon.identity.auth.device.AuthError; importiere
com.amazon.identity.auth.device.authorization.api.
AmazonAuthorizationManager; importieren
com.amazon.identity.auth.device.authorization.api.AuthorizationListener; importiere com.amazon.identity.auth.device.authorization.api.AuthzConstants; - Initialisieren AmazonAuthorizationManager.
Sie müssen eine AmazonAuthorizationManager Variable und erstellen Sie eine neue Instanz der Klasse. Zum Erstellen einer neuen Instanz benötigen Sie nur Ihren aktuellen Anwendungskontext und ein leeres Bundle. Der beste Ort zum Initialisieren AmazonAuthorizationManager ist im beim Erstellen Methode Ihrer Aktivität. Zum Beispielampauf: - Erstellen Sie einen AuthorizeLiistener.
AutorisierenListener implementiert die Schnittstelle AuthorizatioinListener und verarbeitet das Ergebnis der Anruf autorisieren. Es enthält drei Methoden: oinSuccess, beiFehler, und onCanceil. Jede Methode erhält entweder ein Bundle oder ein AuthFehler Objekt.private Klasse AuthorizeListener implementiert AuthorizationListener{
/* Die Autorisierung wurde erfolgreich abgeschlossen. */
@Überschreiben
öffentliche void onSuccess(Bundle-Antwort) {
}
/* Beim Versuch, die Anwendung zu autorisieren, ist ein Fehler aufgetreten.
*/
@Überschreiben
öffentliche void beiFehler(AuthError ae) {
}
/* Die Autorisierung wurde abgebrochen, bevor sie abgeschlossen werden konnte. */
@Überschreiben
öffentliche void onCancel(Bundle Ursache) {
}
} - Anruf AmazonAuthorizationManager.authorize.
Im bei Klick Handler für Ihre Schaltfläche „Mit Amazon anmelden“. Rufen Sie „Authorize“ auf, um den Benutzer zur Anmeldung aufzufordern und Ihre Anwendung zu autorisieren.
Diese Methode ist dafür verantwortlich, den Kunden auf eine der folgenden Arten zu autorisieren:- Wechselt zum Systembrowser und ermöglicht dem Kunden die Anmeldung und Zustimmung zu den angeforderten
- Wechselt zu web view in einem sicheren Kontext, um dem Kunden die Anmeldung und Zustimmung zu den angeforderten
Dieser sichere Kontext für #2 wird derzeit als Amazon Shopping-App auf Android-Geräten bereitgestellt. Von Amazon erstellte Geräte mit Fire OS (zum Beispielample Kindle Fire, Fire Phone und Fire TV) verwenden diese Option immer, auch wenn auf dem Gerät keine Amazon Shopping-App vorhanden ist. Wenn der Kunde daher bereits bei der Amazon Shopping-App angemeldet ist, überspringt diese API die Anmeldeseite und führt zu einem Einmaliges Anmelden Erfahrung für den Kunden.
Wenn Ihre Anwendung autorisiert ist, ist sie für einen oder mehrere Datensätze autorisiert, die als Bereiche. Der erste Parameter ist ein Array von Bereichen, die die Benutzerdaten umfassen, die Sie von Login with Amazon anfordern. Wenn sich ein Benutzer zum ersten Mal bei Ihrer App anmeldet, wird ihm eine Liste der von Ihnen angeforderten Daten angezeigt und er wird um Genehmigung gebeten. Login with Amazon unterstützt derzeit drei Bereiche: profile, das den Namen, die E-Mail-Adresse und die Amazon-Konto-ID des Benutzers enthält; profile:Benutzeridentifikation, die nur die Amazon-Konto-ID enthält; und Postleitzahl, welches die Postleitzahl des Benutzers enthält.
Der beste Weg, authorize aufzurufen, ist asynchron, sodass Sie den UI-Thread nicht blockieren oder einen eigenen Worker-Thread erstellen müssen. Zum Aufrufen asynchron autorisieren, Übergeben Sie ein Objekt, das die AuthorizationListener-Schnittstelle als letzter Parameter:privater AmazonAuthorizationManager mAuthManager; @Überschreiben
geschützt void onCreate(Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
mAuthManager = neuer AmazonAuthorizationManager(dieses, Bundle.EMPTY);// Suchen Sie die Schaltfläche mit der ID „login_with_amazon“
// und einen Klick-Handler einrichten
mLoginButton = (Schaltfläche) findenViewNach ID (R.id.login_with_amazon);
mLoginButton.setOnClickListener(neuer OnClickListener() {
@Überschreiben
öffentliche Leere bei Klick(View v) {
mAuthManager.authorize(
neuer String []{“profile","Postleitzahl"},
Bundle.EMPTY, neuer AuthorizeListener());
}
});
} - Erstellen Sie ein ProfileHörer.
ProfileHörer ist unser Name für eine Klasse, die das implementiert APIListener Schnittstelle und verarbeitet das Ergebnis der Werde professoinellfile Anruf. APIListener enthält zwei Methoden: bei Erfolg und onError (es unterstützt nicht beiAbbrechen weil es keine Möglichkeit gibt, einen Werde professoinellfile Anruf). bei Erfolg erhält ein Bundle-Objekt mit Profile Daten, während aufEriror erhält eine AuthFehler Objekt mit Informationen zum Fehler.Privatunterricht ProfileListener implementiert APIListener{ /* Werde professoinellfile erfolgreich abgeschlossen. */ @Override
öffentliche void onSuccess(Bundle-Antwort) {}
/* Beim Versuch, den Pro abzurufen, ist ein Fehler aufgetretenfile. */ @Override
öffentliche void beiFehler(AuthError ae) {
}
} - Implementieren bei Erfolg für Ihre AuthorizeListener.
In bei Erfolg, Anruf AmazonAuthorizationManager.getProfile um das Kundenprofil abzurufenfile. Werde professoinellfile, verwendet wie authorize eine asynchrone Listener-Schnittstelle. Für Werde professoinellfile, Diese Schnittstelle ist APIListener, nichtAuthorizationListener.
/* Die Autorisierung wurde erfolgreich abgeschlossen. */ @Override
öffentliche void onSuccess(Bundle-Antwort) {
mAuthManager.getProfile(neues ProfileHörer());} - Implementieren bei Erfolg für dein ProfileHörer.
onSuccesshat zwei Hauptaufgaben: den Profi zurückzuholenfile Daten aus dem Antwortpaket und zum Übergeben der Daten an die Benutzeroberfläche. updateProfileDatais eine hypothetische Funktion, die Ihre App implementieren könnte, um Pro anzuzeigenfile Einzelheiten. setzeLoggedInState, Eine weitere hypothetische Funktion würde anzeigen, dass ein Benutzer angemeldet ist und ihm die Möglichkeit geben, Ausloggen.
Um den Profi abzurufenfile Daten aus dem Bundle verwenden wir Namen, die von der AuthzKonstanten Klasse. Das bei Erfolg Bundle enthält die Profile Daten in einem BUNDLE_KEY.PROFILE bündeln.
Innerhalb des Profisfile Bündel, die Umfangsdaten werden indexiert unter PROFILE_KEY.NAME, PROFILE_KEY.EMAIL, PROFILE_KEY.USER_ID, Und PROFILE_KEY.POSTAL_CODE. PROFILE_SCHLÜSSEL.POSTAL_CODE ist nur enthalten, wenn Sie die Postleitzahl Umfang.@Überschreiben
öffentliche void onSuccess(Bundle-Antwort) {
// Die benötigten Daten aus dem Bundle Bundle pro abrufenfileBündel = Antwort.getBundle(
AuthzConstants.BUNDLE_KEY.PROFILE.val);
Zeichenfolgenname = profileBundle.getString(
AuthzConstants.PROFILE_KEY.NAME.val);
Zeichenfolge „E-Mail“ = „pro“fileBundle.getString(
AuthzConstants.PROFILE_KEY.EMAIL.val);
Zeichenfolge „Konto“ = „pro“fileBundle.getString(
AuthzConstants.PROFILE_KEY.USER_ID.val);
Zeichenfolge Postleitzahl = profileBundle.getString(
AuthzConstants.PROFILE_KEY.POSTAL_CODE.val);
runOnUiThread(neues Runnable() { @Override
öffentliche Leere ausführen() {
updateProfileDaten (Name, E-Mail, Konto, Postleitzahl);
}
});
} - Implementieren beiFehler für Ihre ProfileHörer.
beiFehler beinhaltet eine AuthFehler Objekt mit Details zum Fehler./* Beim Versuch, den Pro abzurufen, ist ein Fehler aufgetretenfile. */ @Override
öffentliche void beiFehler(AuthError ae) {
/* Nochmals versuchen oder den Benutzer über den Fehler informieren */
} - Implementieren beiFehlerfür dein AuthorizeListener.
/* Beim Versuch, die Anwendung zu autorisieren, ist ein Fehler aufgetreten.
*/
@Überschreiben
öffentliche void beiFehler(AuthError ae) {
/* Informiere den Benutzer über den Fehler */
} - Implementieren beiAbbrechenfür dein AuthorizeListener.
Da der Autorisierungsprozess dem Benutzer einen Anmeldebildschirm (und möglicherweise einen Zustimmungsbildschirm) in einem web Browser (oder ein webview), Der Benutzer hat die Möglichkeit, die Anmeldung abzubrechen oder die Seite zu verlassen. web Seite. Wenn Sie den Login-Prozess explizit abbrechen, beiAbbrechen wird genannt. Wenn onAbbrechenist aufgerufen wird, möchten Sie Ihre Benutzeroberfläche zurücksetzen./* Die Autorisierung wurde abgebrochen, bevor sie abgeschlossen werden konnte. */
@Überschreiben
öffentliche void onCancel(Bundle Ursache) {
/* setzt die Benutzeroberfläche in einen anmeldebereiten Zustand zurück */
}Notiz: Wenn der Benutzer vom Anmeldebildschirm im Browser weg navigiert oder web view und zurück zu Ihrer App wechselt, erkennt das SDK nicht, dass die Anmeldung nicht abgeschlossen wurde. Wenn Sie Benutzeraktivität in Ihrer App feststellen, bevor die Anmeldung abgeschlossen ist, können Sie davon ausgehen, dass der Benutzer den Browser verlassen hat, und entsprechend reagieren.
Überprüfen Sie beim Start, ob Benutzer angemeldet sind
Wenn sich ein Benutzer bei Ihrer App anmeldet, die App schließt und später neu startet, ist die App weiterhin berechtigt, Daten abzurufen. Der Benutzer wird nicht automatisch abgemeldet. Beim Start können Sie den Benutzer als angemeldet anzeigen, wenn Ihre App noch autorisiert ist. In diesem Abschnitt wird erläutert, wie Sie mit getToken feststellen können, ob die App noch autorisiert ist.
- Erstellen Sie ein TokenListener.
TokenListener implementiert die APIListener Schnittstelle und verarbeitet das Ergebnis des getToken-Aufrufs. APIListener enthält zwei Methoden: bei Erfolg Und beiFehler (es unterstützt nicht beiAbbrechen weil es keine Möglichkeit gibt, einen bekomme Token Anruf). bei Erfolg erhält ein Bundle-Objekt mit Token-Daten, während beiFehler erhält eine AuthFehler Objekt mit Informationen zum Fehler.private Klasse TokenListener implementiert APIListener{ /* getToken erfolgreich abgeschlossen. */ @Override
öffentliche void onSuccess(Bundle-Antwort) {
}
/* Beim Versuch, das Token abzurufen, ist ein Fehler aufgetreten. */ @Override
öffentliche void beiFehler(AuthError ae) {
}
} - Im am Start Methode Ihrer Aktivität, rufen Sie bekomme Token um zu sehen, ob die Anwendung noch autorisiert ist.
bekomme Token ruft den Rohzugriffstoken ab, den der AmazonAuthorizationManager verwendet, um auf ein Kundenpro zuzugreifenfile. Wenn der Token-Wert nicht null ist, ist die App immer noch autorisiert und ein Aufruf von Werde professoinellfile sollte gelingen. getTokenrequires dieselben Bereiche, die Sie in Ihrem Autorisierungsaufruf angefordert haben.
getTokensupports asynchrone Aufrufe auf die gleiche Weise wie getProfile, sodass Sie den UI-Thread nicht blockieren oder einen eigenen Arbeitsthread erstellen müssen. Um getToken asynchron aufzurufen, übergeben Sie ein Objekt, das das unterstützt. APIListener Schnittstelle als letzter Parameter.@Überschreiben
geschützt void onStart(){
super.onStart
();mAuthManager.getToken(new String []{“profile","Postleitzahl"},
neu
: TokenListener());
} - Implementieren bei Erfolg für Ihre TokenListener.
onSuccesshat zwei Aufgaben: das Token aus dem Bundle abzurufen und, wenn das Token gültig ist, aufzurufen Werde professoinellfile.
Um die Token-Daten aus dem Bundle abzurufen, verwenden wir die von der AuthzKonstanten Klasse. Das bei Erfolg Bundle enthält die Token-Daten in einem BUNDLE_KEY.TOKEN-Wert. Wenn dieser Wert nicht null ist,ampich rufe an Werde professoinellfile verwenden Sie denselben Listener, den Sie im vorherigen Abschnitt deklariert haben (siehe Schritte 7 und 8)./* getToken erfolgreich abgeschlossen. */
@Überschreiben
öffentliche void onSuccess(Bundle-Antwort) {
endgültiger String authzToken =
Antwort.getString(AuthzConstants.BUNDLE_KEY.TOKEN.val);
wenn (!TextUtils.isEmpty(authzToken))
{
// Holen Sie sich den Profifile Daten
mAuthManager.getProfile(neues ProfileHörer());
}
}
Die Methode clearAuthorizationState löscht die Autorisierungsdaten des Benutzers aus dem lokalen Datenspeicher von AmazonAuthorizationManager. Ein Benutzer muss sich erneut anmelden, damit die App die Autorisierungsdaten abrufen kann.file Daten. Verwenden Sie diese Methode, um einen Benutzer abzumelden oder um Anmeldeprobleme in der App zu beheben.
- Implementieren Sie eine Abmeldung
Wenn sich ein Benutzer erfolgreich angemeldet hat, sollten Sie einen Abmeldemechanismus bereitstellen, damit er seine Profile Daten und zuvor autorisierte Bereiche. Ihr Mechanismus könnte ein Hyperlink oder ein Menüelement sein. Für dieses BeispielampWir werden eine bei Klick Methode für eine Schaltfläche. - Rufen Sie in Ihrem Logout-Handler auf Autorisierungsstatus löschen. entfernt die Autorisierungsdaten eines Benutzers (Zugriffstoken, Profile) im Laden vor Ort. ClearAuthorizationStatetakes - Zugriffsberechtigung für bestimmte Benutzer keine Parameter außer einem APIListener um Erfolg zu erzielen oder
- Erklären Sie einen anonymen APIListener.
Anonyme Klassen sind eine nützliche Alternative zur Deklaration einer neuen Klasse zur Implementierung APIListener. Sehen Behandeln Sie die Anmeldeschaltfläche und erhalten Sie Profile Daten (S. 17) für eine examplethat deklariert Listener-Klassen. - Implementieren bei Erfolg innerhalb der APIListener
Wann clearAuthorizationState erfolgreich ist, sollten Sie Ihre Benutzeroberfläche aktualisieren, um Verweise auf den Benutzer zu entfernen, und einen Anmeldemechanismus bereitstellen, mit dem sich Benutzer erneut anmelden können. - Implementieren beiFehler innerhalb der APIListener.
If ClearAuthorizationStateReturns (Berechtigungsstatus zurückgeben) Wenn ein Fehler auftritt, können Sie dem Benutzer eine erneute Abmeldung veranlassen.@Überschreiben
geschützt void onCreate(Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
/* Vorherige onCreate-Deklarationen ausgelassen */
// Suche den Button mit der Logout-ID und richte einen Click-Handler ein
mLogoutButton = (Schaltfläche) findenViewNachId(R.id.logout);
mLogoutButton.setOnClickListener(neuer OnClickListener() {
@Überschreiben
öffentliche Leere bei Klick(View v) {
mAuthManager.clearAuthorizationState(neu
APIListener() {
@Überschreiben
public void onSuccess(Ergebnisse bündeln) {
// Abgemeldeten Status in der Benutzeroberfläche festlegen
}
@Überschreiben
öffentliche void beiFehler(AuthError authError) {
// Protokolliere den Fehler
}
});
}
});
}
Manche AmazonAuthorizationManager Methoden geben ein Future-Objekt zurück. Dadurch können Sie die Methode synchron aufrufen, anstatt einen Listener als Parameter zu übergeben. Wenn Sie ein Future-Objekt verwenden, sollten Sie es nicht in einem UI-Thread verwenden. Wenn Sie einen UI-Thread länger als fünf Sekunden blockieren, erhalten Sie eine ANR-Eingabeaufforderung (Application Not Responding). In den Abschnitten „Handle the Login Button“ und „Get Pro“file Daten example, die bei Erfolg Verfahren zur AutorisierenListener wird mit einem Worker-Thread aufgerufen, der erstellt wird von AmazonAuthorizationManager. Das bedeutet, dass dieser Thread bedenkenlos zum Aufrufen von getPiro verwendet werden kann.file synchron. Um einen synchronen Aufruf durchzuführen, weisen Sie den Rückgabewert von getPirofile zu einem Future-Objekt, und rufen Sie die Gießmethode auf diesem Objekt, um zu warten, bis die Methode abgeschlossen ist.
Zukunft.get gibt ein Bundle-Objekt zurück, das enthält ZUKÜNFTIGER_TYP Wert von ERFOLG, FEHLER, or STORNIEREN. Wenn die Methode erfolgreich war, enthält das gleiche Paket PROFILE_Schlüsselwerte für den Profifile Daten. Zum Beispielampauf:
/* Die Autorisierung wurde erfolgreich abgeschlossen. */ @Überschreiben öffentliche void onSuccess(Bundle-Antwort) { Zukunft<Bundle> Zukunft = mAuthManager.getProfile(null); Bundle result = future.get();// Finden Sie heraus, ob der Aufruf erfolgreich war, und rufen Sie das Pro abfile Objekt future_type = Ergebnis.get(AuthzConstants.BUNDLE_KEY.FUTURE.val); wenn (Zukunftstyp == AuthzConstants.ZUKÜNFTIGER_TYP.SUCCESS) { Stringname = result.getString( AuthzConstants.PROFILE_KEY.NAME.val); String-E-Mail = result.getString( AuthzConstants.PROFILE_KEY.EMAIL.val); String-Konto = result.getString( AuthzConstants.PROFILE_KEY.USER_ID.val); String Postleitzahl = Ergebnis.getString( AuthzConstants.PROFILE_KEY.POSTAL_CODE.val); runOnUiThread(neues Runnable() { @Override öffentliche void run() { updateProfileDaten (Name, E-Mail, Konto, PLZ); } }); } sonst wenn (future_type == AuthzConstants.FUTURE_TYPE.ERROR) { // Fehlerobjekt abrufen AuthError authError = AuthError.extractError(Ergebnis); /* Verwenden Sie authError, um den Fehler zu diagnostizieren */ } |
Anmelden mit Amazon – Erste Schritte mit Android – Herunterladen [optimiert]
Anmelden mit Amazon – Erste Schritte mit Android – Herunterladen