Συνδεθείτε με τον Οδηγό έναρξης του Amazon για Android

Σύνδεση με το Amazon: Οδηγός έναρξης για Android
Πνευματικά δικαιώματα © 2016 Amazon.com, Inc. ή οι θυγατρικές της. Ολα τα δικαιώματα διατηρούνται. Το Amazon και το λογότυπο Amazon είναι εμπορικά σήματα της Amazon.com, Inc. ή των θυγατρικών της. Όλα τα άλλα εμπορικά σήματα που δεν ανήκουν στην Amazon αποτελούν ιδιοκτησία των αντίστοιχων κατόχων τους.
Ξεκινώντας για Android
Σε αυτόν τον οδηγό θα σας δείξουμε πώς να προσθέσετε Σύνδεση με το Amazon στην εφαρμογή σας Android. Αφού ολοκληρώσετε αυτόν τον οδηγό, θα πρέπει να έχετε ένα λειτουργικό κουμπί Σύνδεση με το Amazon στην εφαρμογή σας για να επιτρέψετε στους χρήστες να συνδεθούν με τα διαπιστευτήριά τους στο Amazon.
Εγκατάσταση των Εργαλείων προγραμματιστών Android
Η Σύνδεση με το Amazon SDK για Android θα σας βοηθήσει να προσθέσετε Σύνδεση με Amazon στην εφαρμογή Android σας. Σας συνιστούμε να χρησιμοποιήσετε το Σύνδεση με το Amazon SDK για Android από το developer.amazon.com με το Android Studio. Ωστόσο, μπορείτε επίσης να χρησιμοποιήσετε το πρόσθετο Eclipse with ADT. Για βήματα σχετικά με τον τρόπο εγκατάστασης του Android Studio και τη ρύθμιση του Android SDK, βλ Αποκτήστε το Android SDK στο developer.android.com.
Όταν είναι εγκατεστημένο το Android SDK, βρείτε το Διαχειριστής SDK εφαρμογή στην εγκατάσταση Android. Για να αναπτύξετε για σύνδεση με το Amazon, πρέπει να χρησιμοποιήσετε το SDK Manager για να εγκαταστήσετε την πλατφόρμα SDK για Android 2.2 ή νεότερη έκδοση (έκδοση API 8). Βλέπω Προσθήκη πακέτων SDK στο developer.android.com για περισσότερες πληροφορίες σχετικά με τη χρήση του SDK
Μετά την εγκατάσταση του SDK, ρυθμίστε μια εικονική συσκευή Android (AVD) για την εκτέλεση των εφαρμογών σας. Βλέπω Διαχείριση Εικονικές Συσκευές στο developer.android.com για οδηγίες σχετικά με τη ρύθμιση μιας εικονικής συσκευής.
Όταν ρυθμιστεί το περιβάλλον ανάπτυξης, μπορείτε Εγκαταστήστε το Login with Amazon SDK για Android or Εκτελέστε το Sample App, όπως περιγράφεται παρακάτω.
Εγκαταστήστε το Login with Amazon SDK για Android
Το Login with Amazon SDK για Android διατίθεται σε δύο πακέτα. Το πρώτο περιέχει τη βιβλιοθήκη Android και την τεκμηρίωση. Το δεύτερο περιέχει ωςample εφαρμογή που επιτρέπει σε έναν χρήστη να συνδεθεί και εμφανίζει τον επαγγελματία τουfile δεδομένα.
Εάν δεν έχετε ήδη εγκαταστήσει το Android SDK ή τα Εργαλεία ανάπτυξης Android, ανατρέξτε στο Εγκατάσταση τα Εργαλεία προγραμματιστών Android ενότητα παραπάνω.
- Λήψη ενεργητικότης και εξάγετε το files σε έναν κατάλογο στον σκληρό σας δίσκο.
Θα πρέπει να δείτε ένα έγγρ και α lib υποκατάλογος. - Ανοιχτό doc/index.html να view η σύνδεση με το Amazon Android API
- Βλέπω Εγκαταστήστε τη σύνδεση με τη βιβλιοθήκη του Amazon, για οδηγίες σχετικά με τον τρόπο προσθήκης βιβλιοθήκης και τεκμηρίωσης σε Android
Όταν είναι εγκατεστημένη η Σύνδεση με Amazon SDK για Android, μπορείτε Δημιουργήστε μια νέα σύνδεση με το Amazon Εργο, μετά Εγγραφή με σύνδεση στο Amazon .
Εκτελέστε το Sample App
Για να τρέξει το sample εφαρμογή, εισαγάγετε το sampεισέλθετε σε έναν χώρο εργασίας AndroidStudio (εάν χρησιμοποιείτε το Eclipse, πρέπει επίσης να προσθέσετε έναν προσαρμοσμένο χώρο αποθήκευσης κλειδιών εντοπισμού σφαλμάτων στον χώρο εργασίας. Δείτε το Προσθέστε τον Προσαρμοσμένο εντοπισμό σφαλμάτων Keystore στο Eclipse ενότητα παρακάτω). Το κλειδί API που το sampΟι χρήσεις της εφαρμογής απαιτεί ο χώρος εργασίας να χρησιμοποιεί τον χώρο αποθήκευσης κλειδιών που αποστέλλεται με το sample. Εάν δεν είναι εγκατεστημένο το προσαρμοσμένο keystore, οι χρήστες δεν θα μπορούν να συνδεθούν χρησιμοποιώντας το sample. Ο χώρος αποθήκευσης κλειδιών θα παραληφθεί αυτόματα εάν χρησιμοποιείτε το AndroidStudio.
- Λήψη SampleLoginWithAmazonAppForAndroid-src.zip και εξάγετε το files σε έναν κατάλογο στο σκληρό σας
- Ξεκινήστε το Android Studio και επιλέξτε Ανοίξτε ένα υπάρχον έργο Android Studio
- Περιηγηθείτε στο SampleLoginWithAmazonApp κατάλογο που λαμβάνεται μετά την εξαγωγή του κατεβασμένου zip file στο Βήμα
- Από το Οικοδομώ μενού, κάντε κλικ Δημιουργία έργουκαι περιμένετε να ολοκληρωθεί το έργο
- Από το Τρέξιμο μενού, κάντε κλικ Τρέξιμο και μετά κάντε κλικ στο SampleLoginWithAmazonApp.
- Επιλέξτε τον εξομοιωτή ή τη συνδεδεμένη συσκευή Android και κάντε κλικ στο Τρέξιμο.
Προσθέστε το κατάστημα προσαρμοσμένου κλειδιού εντοπισμού σφαλμάτων στο Eclipse
Εάν χρησιμοποιείτε το Eclipse, ακολουθήστε τις παρακάτω οδηγίες για να προσθέσετε τον προσαρμοσμένο χώρο αποθήκευσης κλειδιών εντοπισμού σφαλμάτων:
- Στο Προτιμήσεις διαλόγου, επιλέξτε Android και Οικοδομώ.
- Δίπλα στο Εθιμο Debug Keystore, κάντε κλικ Ξεφυλλίζω.
- Μεταβείτε στο sample κατάλογο εφαρμογών και επιλέξτε 3p.keystoreκαι μετά κάντε κλικ OK.
Εγγραφή με σύνδεση στο Amazon
Για να μπορέσετε να χρησιμοποιήσετε τη σύνδεση με το Amazon σε α webιστότοπο ή σε μια εφαρμογή για κινητά, πρέπει να εγγράψετε μια εφαρμογή στο Login με το Amazon. Η εφαρμογή Σύνδεσή σας με το Amazon είναι η εγγραφή που περιέχει βασικές πληροφορίες για την επιχείρησή σας και πληροφορίες για καθεμία webιστότοπος ή εφαρμογή για κινητά που δημιουργείτε και υποστηρίζει τη σύνδεση με το Amazon. Αυτές οι πληροφορίες επιχείρησης εμφανίζονται στους χρήστες κάθε φορά που χρησιμοποιούν τη σύνδεση με το Amazon στο δικό σας webιστότοπο ή εφαρμογή για κινητά. Οι χρήστες θα δουν το όνομα της εφαρμογής σας, το λογότυπό σας και έναν σύνδεσμο προς την πολιτική απορρήτου σας. Αυτά τα βήματα δείχνουν πώς μπορείτε να καταχωρήσετε μια σύνδεση με την εφαρμογή Amazon και να προσθέσετε μια εφαρμογή Android σε αυτόν τον λογαριασμό.
Δείτε τα παρακάτω θέματα:
- Καταχωρήστε τη σύνδεσή σας με την εφαρμογή Amazon
- Καταχωρίστε την εφαρμογή Android σας
- Προσθέστε μια εφαρμογή Android για το Amazon Appstore
- Προσθέστε μια εφαρμογή Android χωρίς Appstore
- Υπογραφές εφαρμογών Android και κλειδιά API
- Καθορισμός υπογραφής εφαρμογής Android
- Ανάκτηση κλειδιού API Android
Καταχωρήστε τη σύνδεσή σας με την εφαρμογή Amazon
- Μεταβείτε στο https://login.amazon.com.
- Εάν έχετε εγγραφεί στο Login με το Amazon στο παρελθόν, κάντε κλικ στο Κονσόλα εφαρμογής. Διαφορετικά, κάντε κλικ Εγγραφείτε. Θα ανακατευθυνθείτε στο Seller Central, το οποίο διαχειρίζεται την εγγραφή αίτησης για σύνδεση με. Εάν αυτή είναι η πρώτη φορά που χρησιμοποιείτε το Seller Central, θα σας ζητηθεί να δημιουργήσετε έναν λογαριασμό Seller Central.
- Κλικ Εγγραφή Νέας Εφαρμογής. Ο Καταχωρήστε την Αίτησή σας θα εμφανιστεί η φόρμα:
a. Στο Καταχωρήστε την Αίτησή σας φόρμα, εισαγάγετε ένα Ονομα και α Περιγραφή για την αίτησή σας.
Ο Ονομα είναι το όνομα που εμφανίζεται στην οθόνη συναίνεσης όταν οι χρήστες συμφωνούν να μοιραστούν πληροφορίες με την αίτησή σας. Αυτό το όνομα ισχύει για Android, iOS και webεκδόσεις ιστότοπου της εφαρμογής σας.
b. Εισαγάγετε α Σημείωση απορρήτου URL για την αίτησή σας
Ο Σημείωση απορρήτου URL είναι η τοποθεσία της πολιτικής απορρήτου της εταιρείας ή της εφαρμογής σας (για παράδειγμαample, http://www.example.com/privacy.html). Αυτός ο σύνδεσμος εμφανίζεται στους χρήστες στην οθόνη συναίνεσης.
c. Εάν θέλετε να προσθέσετε ένα Εικόνα λογότυπου για την αίτησή σας, κάντε κλικ Ξεφυλλίζω και εντοπίστε την κατάλληλη εικόνα.
Αυτό το λογότυπο εμφανίζεται στην οθόνη σύνδεσης και συγκατάθεσης για να αντιπροσωπεύει την επιχείρησή σας ή webτοποθεσία. Το λογότυπο θα συρρικνωθεί σε ύψος 50 εικονοστοιχείων εάν είναι μεγαλύτερο από 50 εικονοστοιχεία. δεν υπάρχει περιορισμός στο πλάτος του λογότυπου - Κλικ Εκτός. Το sampΗ εγγραφή θα πρέπει να μοιάζει με αυτό:

Αφού αποθηκευτούν οι βασικές ρυθμίσεις της εφαρμογής σας, μπορείτε να προσθέσετε ρυθμίσεις για συγκεκριμένες webιστότοποι και εφαρμογές για κινητά που θα χρησιμοποιήσουν αυτήν τη σύνδεση με λογαριασμό Amazon.
Καταχωρίστε την εφαρμογή Android σας
Για να εγγραφείτε μια εφαρμογή Android, έχετε την επιλογή να καταχωρίσετε μια εφαρμογή μέσω του Amazon Appstore (Προσθέστε μια εφαρμογή Android για το Amazon Appstore, σελ. 8) ή απευθείας με Σύνδεση με Amazon (Προσθέστε ένα Android Εφαρμογή χωρίς Appstore, σελ. 9). Όταν η εφαρμογή σας εγγραφεί, θα έχετε πρόσβαση σε ένα κλειδί API που θα εκχωρήσει στην εφαρμογή σας πρόσβαση στην υπηρεσία εξουσιοδότησης Σύνδεση με Amazon.
Σημείωμα: Αν σκοπεύετε να χρησιμοποιήσετε το Amazon Device Messaging στην εφαρμογή σας Android, επικοινωνήστε Lwa- support@amazon.com με:
- Η διεύθυνση email του λογαριασμού Amazon που χρησιμοποιήσατε για να εγγραφείτε για Σύνδεση με το Amazon.
- Η διεύθυνση ηλεκτρονικού ταχυδρομείου του λογαριασμού Amazon που χρησιμοποιήσατε για να εγγραφείτε στο Amazon Appstore (εάν διαφέρει).
- Το όνομα στον λογαριασμό σας στο κεντρικό πωλητή. (Στο Seller Central, κάντε κλικ Ρυθμίσεις> Πληροφορίες λογαριασμού> Πληροφορίες πωλητήκαι χρησιμοποιήστε το Εμφανιζόμενο όνομα).
- Το όνομα στον λογαριασμό προγραμματιστή σας στο Amazon Appstore. (Στον ιστότοπο Διανομή εφαρμογών για κινητά, κάντε κλικ Ρυθμίσεις > Εταιρεία Profile και χρησιμοποιήστε το Όνομα προγραμματιστή ή όνομα εταιρείας).
Προσθέστε μια εφαρμογή Android για το Amazon Appstore
Τα ακόλουθα βήματα θα προσθέσουν μια εφαρμογή Amazon Appstore στη σύνδεση σας με τον λογαριασμό Amazon:
- Από την οθόνη Εφαρμογή, κάντε κλικ Ρυθμίσεις Android. Εάν έχετε ήδη καταχωριστεί μια εφαρμογή Android, αναζητήστε το Προσθήκη κλειδιού API κουμπί στο Ρυθμίσεις Android
Ο Λεπτομέρειες εφαρμογής Android θα εμφανιστεί η φόρμα: - Επιλέγω Ναί ως απάντηση στην ερώτηση "Διανέμεται αυτή η εφαρμογή μέσω του Amazon Appstore;"
- Εισαγάγετε το Επιγραφή της εφαρμογής Android σας. Αυτό δεν χρειάζεται να είναι το επίσημο όνομα της εφαρμογής σας. Απλώς προσδιορίζει τη συγκεκριμένη εφαρμογή Android μεταξύ των εφαρμογών και webιστότοποι που είναι εγγεγραμμένοι στη σύνδεσή σας με την εφαρμογή Amazon.
- Προσθέστε το δικό σας Αναγνωριστικό Amazon Appstore.
- Εάν υπογράψατε μόνοι σας την εφαρμογή σας, προσθέστε πληροφορίες αυτουπογραφής. Αυτό θα σας επιτρέψει να αποκτήσετε ένα κλειδί API κατά την ανάπτυξη χωρίς να χρησιμοποιήσετε απευθείας το Appstore:
a. Εάν η εφαρμογή σας δεν υπογράφεται μέσω του Amazon Appstore, επιλέξτε Ναι απαντώντας στην ερώτηση "Είναι αυτή η εφαρμογή αυτο-υπογεγραμμένη;"
Ο Λεπτομέρειες εφαρμογής Android η φόρμα θα επεκταθεί:

b. Εισαγάγετε το δικό σας Ονομα πακέτου.
Αυτό πρέπει να ταιριάζει με το όνομα πακέτου του έργου σας Android. Για να προσδιορίσετε το όνομα πακέτου του Android Project σας, ανοίξτε το έργο στο εργαλείο προγραμματιστή Android της επιλογής σας.
Ανοιχτό AndroidManifest.XML στο Package Explorer και επιλέξτε το Δηλωτικό αυτί. Η πρώτη καταχώριση είναι το όνομα πακέτου.
c. Εισαγάγετε την εφαρμογή Υπογραφή.
Αυτή είναι μια τιμή κατακερματισμού SHA-256 που χρησιμοποιείται για την επαλήθευση της εφαρμογής σας. Η υπογραφή πρέπει να έχει τη μορφή 32 δεκαεξαδικών ζευγών που χωρίζονται με άνω και κάτω τελεία (π.χ.ample: 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). Βλέπω Υπογραφές εφαρμογών Android και κλειδιά API για βήματα που μπορείτε να χρησιμοποιήσετε για να εξαγάγετε την υπογραφή από το έργο σας. - Κλικ Εκτός.
Εάν διαφορετικές εκδόσεις της εφαρμογής σας έχουν διαφορετικές υπογραφές ή ονόματα πακέτων, όπως για μία ή περισσότερες εκδόσεις δοκιμών και μια έκδοση παραγωγής, κάθε έκδοση απαιτεί το δικό της Κλειδί API. Από το Ρυθμίσεις Android της εφαρμογής σας, κάντε κλικ στο Προσθήκη κλειδιού API για να δημιουργήσετε επιπλέον κλειδιά για την εφαρμογή σας (ένα ανά έκδοση).
Υπογραφές εφαρμογών Android και κλειδιά API
Η υπογραφή της εφαρμογής είναι μια τιμή κατακερματισμού SHA-256 που εφαρμόζεται σε κάθε εφαρμογή Android κατά την κατασκευή της. Η Amazon χρησιμοποιεί την υπογραφή της εφαρμογής για να κατασκευάσει το κλειδί API σας. Το API Key επιτρέπει στις υπηρεσίες Amazon να αναγνωρίζουν την εφαρμογή σας. Εάν χρησιμοποιείτε το Amazon Appstore για να υπογράψετε την εφαρμογή σας, το κλειδί API παρέχεται αυτόματα. Εάν δεν χρησιμοποιείτε το Amazon Appstore, θα χρειαστεί να διαχειριστείτε το κλειδί API χειροκίνητα.
Οι υπογραφές εφαρμογών αποθηκεύονται σε ένα κατάστημα κλειδιών. Γενικά, για τις εφαρμογές Android υπάρχει ένας χώρος αποθήκευσης κλειδιών εντοπισμού σφαλμάτων και ένας χώρος αποθήκευσης κλειδιών έκδοσης. Ο χώρος αποθήκευσης κλειδιών εντοπισμού σφαλμάτων δημιουργείται από την προσθήκη Εργαλείων ανάπτυξης Android για το Eclipse και χρησιμοποιείται από προεπιλογή. Μπορείτε να βρείτε τη θέση του χώρου αποθήκευσης κλειδιών εντοπισμού σφαλμάτων στο Eclipse κάνοντας κλικ Παράθυρο, και στη συνέχεια επιλέγοντας Προτιμήσεις > Android > Build. Από αυτήν την οθόνη μπορείτε επίσης να προσθέσετε το δικό σας χώρο αποθήκευσης κλειδιών εντοπισμού σφαλμάτων. Για Android Studio, από το Οικοδομώ μενού, επιλέξτε Επεξεργασία τύπων δόμησης, μετά πηγαίνετε στο Υπογραφή και εντοπίστε το keystore εντοπισμού σφαλμάτων στο Κατάστημα File πεδίο.
Ένα βασικό κατάστημα κυκλοφορίας δημιουργείται συνήθως όταν εξάγετε την εφαρμογή σας Android για να δημιουργήσετε ένα υπογεγραμμένο APK file.
Μέσω της διαδικασίας εξαγωγής, εάν δημιουργείτε ένα νέο κατάστημα κλειδιών έκδοσης, θα επιλέξετε τη θέση του. Με
από προεπιλογή θα τοποθετηθεί στην ίδια θέση με το προεπιλεγμένο KeyStore εντοπισμού σφαλμάτων.
Εάν έχετε καταχωρίσει την εφαρμογή σας χρησιμοποιώντας την υπογραφή εντοπισμού σφαλμάτων κατά την ανάπτυξη, θα πρέπει να προσθέσετε μια νέα ρύθμιση Android στην εφαρμογή σας όταν είστε έτοιμοι να αποδεσμεύσετε την εφαρμογή. Η νέα ρύθμιση εφαρμογής πρέπει να χρησιμοποιεί την υπογραφή από το κατάστημα αποθήκευσης κλειδιών.
Βλέπω Υπογραφή των αιτήσεών σας στο developer.android.com για περισσότερες πληροφορίες.
Προσδιορίστε την υπογραφή εφαρμογής Android
- Εάν έχετε υπογεγραμμένο APK file:
a. Αποσυμπιέστε το APK file και εξαγωγή CERT.RSA. (Μπορείτε να μετονομάσετε την επέκταση APK σε ZIP εάν είναι απαραίτητο).
b. Από τη γραμμή εντολών, εκτελέστε:keytool -printcert -file CERT.RSA Keytoolis που βρίσκεται στο αποθήκη κατάλογο της εγκατάστασης Java.
- Αν έχετε κατάστημα κλειδιών file:
a. Από τη γραμμή εντολών, εκτελέστε:keytool -list -v -alias -κλειστό κατάστημαfileόνομα> Keytool βρίσκεται στον κατάλογο bin της εγκατάστασης Java. Το ψευδώνυμο είναι το όνομα του κλειδιού που χρησιμοποιείται για την υπογραφή της εφαρμογής.
b. Εισαγάγετε τον κωδικό πρόσβασης για το κλειδί και πατήστε Εισάγω. - Υπό Δακτυλικά αποτυπώματα πιστοποιητικών, αντιγράψτε το SHA256 αξία.
Ανακτήστε το κλειδί API Android
Όταν έχετε καταχωρίσει μια ρύθμιση Android και έχετε υπογράψει μια υπογραφή εφαρμογής, μπορείτε να ανακτήσετε το κλειδί API από τη σελίδα εγγραφής για την εφαρμογή Σύνδεση με Amazon. Θα χρειαστεί να τοποθετήσετε αυτό το κλειδί API σε ένα file στο έργο σας Android. Μέχρι να το κάνετε, η εφαρμογή δεν θα εξουσιοδοτηθεί να επικοινωνεί με την υπηρεσία εξουσιοδότησης Σύνδεση με Amazon.
- Μεταβείτε στο https://login.amazon.com.
- Κλικ Κονσόλα εφαρμογής.
- Στο Εφαρμογές πλαίσιο στα αριστερά, επιλέξτε το δικό σας
- Βρείτε την εφαρμογή σας Android κάτω από το Ρυθμίσεις Android (Εάν δεν έχετε ακόμη καταχωρήσει μια εφαρμογή Android, βλ Προσθέστε μια εφαρμογή Android για το Amazon Appstore).
- Κλικ Δημιουργία κλειδιού API. Ένα αναδυόμενο παράθυρο θα εμφανίσει το κλειδί API σας. Για να αντιγράψετε το κλειδί, κάντε κλικ Επιλέξτε Όλα για να επιλέξετε ολόκληρο
Σημείωμα: Η τιμή κλειδιού API βασίζεται, εν μέρει, στον χρόνο δημιουργίας της. Επομένως, οι επόμενες τιμές κλειδιού API που δημιουργείτε ενδέχεται να διαφέρουν από τις αρχικές. Μπορείτε να χρησιμοποιήσετε οποιαδήποτε από αυτές τις βασικές τιμές API στην εφαρμογή σας, καθώς είναι όλες έγκυρες. - Βλέπω Προσθέστε το κλειδί API στο έργο σας για οδηγίες σχετικά με την προσθήκη του κλειδιού API στο Android σας
Δημιουργία σύνδεσης με το Amazon Project
Σε αυτήν την ενότητα, θα μάθετε πώς μπορείτε να δημιουργήσετε ένα νέο έργο Android για σύνδεση με το Amazon, να διαμορφώσετε το έργο και να προσθέσετε κώδικα στο έργο για να συνδεθείτε σε έναν χρήστη με σύνδεση με το Amazon. Θα περιγράψουμε τα βήματα για το Android Studio, αλλά μπορείτε να εφαρμόσετε ανάλογα βήματα σε οποιοδήποτε εργαλείο ανάπτυξης IDE ή Android της επιλογής σας.
Δείτε τα παρακάτω θέματα:
- Δημιουργήστε μια νέα σύνδεση με το Amazon Project
- Εγκαταστήστε τη σύνδεση με τη βιβλιοθήκη του Amazon
- Ενεργοποιήστε το Content Assist για τη σύνδεση με τη βιβλιοθήκη Amazon
- Ορίστε δικαιώματα δικτύου για την εφαρμογή σας
- Προσθέστε το κλειδί API στο έργο σας
- Αφαιρέστε το Sample App Custom Debug Keystore
- Αντιμετώπιση αλλαγών διαμόρφωσης για τη δραστηριότητά σας
- Προσθέστε μια δραστηριότητα εξουσιοδότησης στο έργο σας
- Προσθέστε ένα κουμπί σύνδεσης με το Amazon στην εφαρμογή σας
- Χειριστείτε το κουμπί σύνδεσης και αποκτήστε επαγγελματίεςfile Δεδομένα
- Ελέγξτε για σύνδεση χρήστη κατά την εκκίνηση
- Διαγράψτε την κατάσταση εξουσιοδότησης και αποσυνδεθείτε από έναν χρήστη
- Καλέστε συγχρόνως το Amazon Authorization Manager Methods
Δημιουργήστε μια νέα σύνδεση με το Amazon Project
Εάν δεν έχετε ακόμη ένα έργο εφαρμογής για τη χρήση της σύνδεσης με το Amazon, ακολουθήστε τις παρακάτω οδηγίες για να δημιουργήσετε ένα. Εάν έχετε μια υπάρχουσα εφαρμογή, μεταβείτε στο Εγκαταστήστε τη σύνδεση με τη βιβλιοθήκη του Amazon .
- Εκτόξευση Εργαλείο ανάπτυξης Android.
- Από το File μενού, επιλέξτε Νέος και Σχέδιο.
- Εισαγάγετε ένα Όνομα εφαρμογής και Όνομα εταιρείας για σας
- Εισαγάγετε το Αίτηση και επωνυμία εταιρείας που αντιστοιχεί στο όνομα του πακέτου που επιλέξατε κατά την εγγραφή της εφαρμογής σας στο Login με την Amazon
Εάν δεν έχετε καταχωρίσει ακόμα την εφαρμογή σας, επιλέξτε ένα Όνομα πακέτου και στη συνέχεια ακολουθήστε τις οδηγίες στο Εγγραφή με σύνδεση στο Amazon ενότητα αφού δημιουργήσετε το έργο σας. Εάν το όνομα πακέτου της εφαρμογής σας δεν ταιριάζει με το καταχωρημένο όνομα πακέτου, οι κλήσεις Σύνδεσής σας με το Amazon δεν θα είναι επιτυχείς. - Επιλέξτε α Ελάχιστο απαιτούμενο SDK του API 8: Android 2 (Froyo) ή νεότερη έκδοση και κάντε κλικ Επόμενος.
- Επιλέξτε τον τύπο δραστηριότητας που θέλετε να δημιουργήσετε και κάντε κλικ στο Επόμενος.
- Συμπληρώστε τις σχετικές λεπτομέρειες και κάντε κλικ στο Φινίρισμα.
Θα έχετε τώρα ένα νέο έργο στο χώρο εργασίας σας, το οποίο μπορείτε να χρησιμοποιήσετε για να καλέσετε Σύνδεση με Amazon.
Εγκαταστήστε τη σύνδεση με τη βιβλιοθήκη του Amazon
Εάν δεν έχετε πραγματοποιήσει ακόμα λήψη του Login with Amazon SDK για Android, δείτε Εγκαταστήστε τη σύνδεση με Amazon SDK για Android (σελ. 4).
- Με το έργο σας ανοιχτό στα Εργαλεία προγραμματιστών Android, σε Project Explorer, κάντε δεξί κλικ στο δικό σας Σχέδιο.
- Εάν καλέσει κάποιος φάκελος libs δεν υπάρχει ήδη, δημιουργήστε
- Αντιγράψτε το σύνδεση-με-amazon-sdk.jar file από το File Σύστημακαι, στη συνέχεια, επικολλήστε το στο libs καταλόγου κάτω από το έργο/εφαρμογή σας.
- Κάντε δεξί κλικ σύνδεση-με-amazon-sdk.jarκαι ελέγξτε το Προσθήκη ως βιβλιοθήκης
Ενεργοποιήστε το Content Assist για τη σύνδεση με τη βιβλιοθήκη Amazon στο Eclipse
Για να ενεργοποιηθεί η υποστήριξη περιεχομένου Eclipse σε ένα έργο Android απαιτείται η χρήση α .σκηνικά θέατρου file. Για περισσότερες πληροφορίες σχετικά με τη βοήθεια περιεχομένου, βλ Content/Code Assist onhelp.eclipse.org.
Για να ενεργοποιηθεί η υποστήριξη περιεχομένου Eclipse σε ένα έργο Android απαιτείται η χρήση α .σκηνικά θέατρου file. Για περισσότερες πληροφορίες σχετικά με τη βοήθεια περιεχομένου, βλ Content/Code Assist onhelp.eclipse.org.
- In Εξερεύνηση των Windows, μεταβείτε στο έγγραφα φάκελο για το Σύνδεση με το Amazon SDK για Android και αντιγράψτε το φάκελο στο
- Με το έργο σας ανοιχτό, μεταβείτε στο Εξερεύνηση πακέτων και επιλέξτε το libs Κλικ Εκδίδω από το κύριο μενού και επιλέξτε Πάστα. Θα πρέπει τώρα να έχετε ένα libs\docs τηλεφωνικός κατάλογος.
- Επιλέξτε το libs Κλικ File από το κύριο μενού και επιλέξτε Νέος καιFile.
- Στο Νέος File διαλόγου, εισαγάγετε login-with-amazon-sdk.jar.properties και κάντε κλικ Φινίρισμα.
- Η έκλειψη πρέπει να ανοίξει login-with-amazon-sdk.jar.properties στον επεξεργαστή κειμένου. Στο πρόγραμμα επεξεργασίας κειμένου, προσθέστε την ακόλουθη γραμμή στο file:
doc=docs - Από το File μενού, κάντε κλικ Εκτός.
- Ίσως χρειαστεί να επανεκκινήσετε το Eclipse για να τεθούν σε ισχύ οι αλλαγές
Ορίστε δικαιώματα δικτύου για την εφαρμογή σας
Προκειμένου η εφαρμογή σας να χρησιμοποιεί Σύνδεση με Amazon, πρέπει να έχει πρόσβαση στο Διαδίκτυο και να έχει πρόσβαση σε πληροφορίες κατάστασης δικτύου. Η εφαρμογή σας πρέπει να επιβεβαιώσει αυτά τα δικαιώματα στο μανιφέστο Android σας, εάν δεν το έχει ήδη.
ΣΗΜΕΙΩΜΑ: Τα παρακάτω βήματα διαδικασίας αφορούν συγκεκριμένα την προσθήκη των δικαιωμάτων στο Eclipse. Εάν χρησιμοποιείτε Android Studio ή διαφορετικό IDE, μπορείτε να παραλείψετε όλα τα αριθμημένα βήματα παρακάτω. Αντίθετα, αντιγράψτε τις γραμμές κώδικα που εμφανίζονται κάτω από το στιγμιότυπο οθόνης και επικολλήστε τις στο AndroidManifest.xml file, εκτός του μπλοκ εφαρμογών.
- In Πακέτο Εξερευνητής, κάντε διπλό κλικ xml.
- στο Άδειες καρτέλα, κάντε κλικ Προσθέτω.
- Επιλέγω Χρησιμοποιεί άδεια και κάντε κλικ OK.
- Στα δεξιά του Άδειες, βρείτε το Δικαιώματα για τις χρήσεις
- Στο Ονομα , πληκτρολογήστε άδεια. INTERNET ή επιλέξτε το από το αναπτυσσόμενο μενού.
- στο Άδειες καρτέλα, κάντε κλικ Προσθέτω
- Επιλέγω Χρησιμοποιεί άδεια και κάντε κλικ OK.
- Στο Ονομα , πληκτρολογήστε άδεια.ACCESS_NETWORK_STATE ή επιλέξτε το από το αναπτυσσόμενο μενού
- Από το File μενού, κάντε κλικ Εκτός.
Τα δικαιώματα δήλωσης θα πρέπει τώρα να έχουν τις ακόλουθες τιμές:

Στο AndroidManifest.xml καρτέλα, θα πρέπει τώρα να δείτε αυτές τις εγγραφές κάτω από το στοιχείο δήλωσης:
Προσθέστε το κλειδί API στο έργο σας
Όταν καταχωρίζετε την εφαρμογή σας Android με σύνδεση στο Amazon, σας εκχωρείται ένα κλειδί API. Αυτό είναι ένα αναγνωριστικό που θα χρησιμοποιήσει ο Διαχειριστής εξουσιοδότησης Amazon για να προσδιορίσει την αίτησή σας στην υπηρεσία εξουσιοδότησης σύνδεσης με το Amazon. Εάν χρησιμοποιείτε το Amazon Appstore για να υπογράψετε την εφαρμογή σας, το Appstore θα παρέχει αυτόματα το κλειδί API. Εάν δεν χρησιμοποιείτε το Amazon Appstore, το Amazon Authorization Manager φορτώνει αυτήν την τιμή κατά το χρόνο εκτέλεσης από το api_key.txt file στο ακίνητη περιουσία τηλεφωνικός κατάλογος.
- Εάν δεν έχετε ακόμα το κλειδί API, ακολουθήστε τις οδηγίες στο Ανακτήστε το κλειδί API Android (σελ. 11).
- Με το έργο ADT ανοιχτό, από το File μενού, κάντε κλικ Νέος και επιλέξτε Κείμενο χωρίς τίτλο File. Θα πρέπει τώρα να έχετε ένα παράθυρο επεξεργασίας για ένα κείμενο file ονομάστηκε Χωρίς τίτλο 1. Προσθέστε το κλειδί API στο κείμενο
- Από το File μενού, κάντε κλικ Αποθήκευση ως.
- Στο Αποθήκευση ως διαλόγου, επιλέξτε το ακίνητη περιουσία κατάλογο του έργου σας ως γονικό φάκελο. Για File όνομα, εισάγετε txt.
Αφαιρέστε το Sample App Custom Debug Keystore
ΣΗΜΕΙΩΜΑ: Αυτό το βήμα απαιτείται μόνο εάν χρησιμοποιείτε το Eclipse. εάν χρησιμοποιείτε το Android Studio, παραλείψτε αυτήν την ενότητα.
Εάν εγκαταστήσατε τη σύνδεση με το Amazon για Android sampΓια να μεταβείτε στην εφαρμογή στον ίδιο χώρο εργασίας που χρησιμοποιείτε για την εφαρμογή σας Android, ενδέχεται να έχετε ορίσει ένα προσαρμοσμένο χώρο αποθήκευσης κλειδιών εντοπισμού σφαλμάτων για τον χώρο εργασίας. Πρέπει να εκκαθαρίσετε το προσαρμοσμένο χώρο αποθήκευσης κλειδιών εντοπισμού σφαλμάτων για να χρησιμοποιήσετε το δικό σας κλειδί API.
- Από το κύριο μενού, κάντε κλικ Παράθυρο και επιλέξτε Προτιμήσεις.
- Στο Προτιμήσεις διαλόγου, επιλέξτε Android και Οικοδομώ.
- Καθαρίστε το Εθιμο εντοπισμός σφαλμάτων αποθήκευσης κλειδιών
- Κλικ OK.
Αντιμετώπιση αλλαγών διαμόρφωσης για τη δραστηριότητά σας
Εάν ένας χρήστης αλλάξει τον προσανατολισμό της οθόνης ή αλλάξει την κατάσταση πληκτρολογίου της συσκευής κατά τη σύνδεσή του, θα ζητήσει επανεκκίνηση της τρέχουσας δραστηριότητας. Αυτή η επανεκκίνηση θα παραβλέψει απροσδόκητα την οθόνη σύνδεσης. Για να το αποφύγετε αυτό, πρέπει να ορίσετε τη δραστηριότητα που χρησιμοποιεί τη μέθοδο εξουσιοδότησης για να χειριστείτε αυτές τις αλλαγές διαμόρφωσης με μη αυτόματο τρόπο. Αυτό θα αποτρέψει την επανεκκίνηση της δραστηριότητας.
- In Πακέτο Εξερευνητής, κάντε διπλό κλικ xml.
- Στο Εφαρμογή ενότητα, εντοπίστε τη δραστηριότητα που θα χειριστεί τη σύνδεση με το Amazon (π.χample, Κύρια δραστηριότητα).
- Προσθέστε το ακόλουθο χαρακτηριστικό στη δραστηριότητα που εντοπίσατε στο Βήμα 2:
android: configChanges = "πληκτρολόγιο | πληκτρολόγιο Κρυφό | προσανατολισμός" Ή για το API 13 ή μεγαλύτερο:
android: configChanges = "πληκτρολόγιο | πληκτρολόγιο Κρυφό | προσανατολισμός | οθόνη μέγεθος" - Από το File μενού, κάντε κλικ Εκτός
Τώρα, όταν συμβεί μια αλλαγή προσανατολισμού πληκτρολογίου ή συσκευής, το Android θα καλέσει το onConfigurationChanged μέθοδος για τη δραστηριότητά σας. Δεν χρειάζεται να εφαρμόσετε αυτήν τη λειτουργία εκτός εάν υπάρχει μια πτυχή αυτών των αλλαγών διαμόρφωσης που θέλετε να χειριστείτε για την εφαρμογή σας
Όταν ο χρήστης κάνει κλικ στο κουμπί Σύνδεση με το Amazon, το API θα ξεκινήσει ένα web πρόγραμμα περιήγησης για να παρουσιάσει μια σελίδα σύνδεσης και συναίνεσης στον χρήστη. Για να λειτουργήσει αυτή η δραστηριότητα του προγράμματος περιήγησης, πρέπει να προσθέσετε τη Δραστηριότητα Εξουσιοδότησης στο μανιφέστο σας.
- In Πακέτο Εξερευνητής, κάντε διπλό κλικ xml.
- Στο Εφαρμογή ενότητα, προσθέστε τον ακόλουθο κώδικα, αντικαθιστώντας το "com.example.app" με το όνομα του πακέτου σας για αυτήν την εφαρμογή:
<δραστηριότητα 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” />
<δεδομένα
android:host="com.example.app” android:scheme=”amzn” />
την εφαρμογή σας. Αυτή η ενότητα παρέχει βήματα για τη λήψη μιας επίσημης σύνδεσης με την εικόνα του Amazon και τη σύζευξή της με ένα Android ImageButton.
- Προσθέστε ένα τυπικό ImageButton στην εφαρμογή σας.
Για περισσότερες πληροφορίες σχετικά με τα κουμπιά Android και την κλάση ImageButton, δείτε Κουμπιά στο developer.android.com. - Δώστε στο κουμπί σας ένα αναγνωριστικό.
Στη δήλωση XML του κουμπιού, ορίστε το χαρακτηριστικό android:id σε @+id/login_with_amazon. Για π.χample:android: id = "@ + id / login_with_amazon" - Επιλέξτε μια εικόνα κουμπιού.
Συμβουλευτείτε τη σύνδεσή μας με την Amazon Οδηγίες στυλ για μια λίστα κουμπιών που μπορείτε να χρησιμοποιήσετε στην εφαρμογή σας. Κατεβάστε ένα αντίγραφο του LWA_Android.zip fileΤο Εξαγάγετε ένα αντίγραφο του κουμπιού που προτιμάτε για κάθε πυκνότητα οθόνης που υποστηρίζει η εφαρμογή σας (xxhdpi, xhdpi, hdpi, mdpi ή tvdpi). Για περισσότερες πληροφορίες σχετικά με την υποστήριξη πολλαπλών πυκνοτήτων οθόνης στο Android, δείτε Εναλλακτικές διατάξεις στο θέμα "Υποστήριξη πολλαπλών οθονών" στο ondeveloper.android.com. - Αντιγράψτε την κατάλληλη εικόνα κουμπιού files στο έργο σας.
Για κάθε πυκνότητα οθόνης που υποστηρίζετε (xhdpi, hdpi, mdpi ή ldpi), αντιγράψτε το κουμπί λήψης στο res / σχέδιο κατάλογος για αυτήν την πυκνότητα οθόνης. - Δηλώστε την εικόνα του κουμπιού.
Στη δήλωση XML του κουμπιού, ορίστε το χαρακτηριστικό android:src στο όνομα του κουμπιού που επιλέξατε. Για π.χample:android: src = "@ drawable / btnlwa_gold_loginwithamazon.png" 6. Φορτώστε την εφαρμογή σας και βεβαιωθείτε ότι το κουμπί έχει πλέον εικόνα Σύνδεση με το Amazon. Θα πρέπει να βεβαιωθείτε ότι το κουμπί εμφανίζεται σωστά για κάθε πυκνότητα οθόνης που υποστηρίζετε.
Αυτή η ενότητα εξηγεί πώς να καλέσετε το εξουσιοδοτημένο και το getProfile API για να συνδεθείτε σε έναν χρήστη και να ανακτήσετε τον επαγγελματία τουfile δεδομένα. Αυτό περιλαμβάνει τη δημιουργία ενός ακροατή onClick για το κουμπί Σύνδεση με το Amazon στη μέθοδο onCreate της εφαρμογής σας.
- Προσθέστε σύνδεση με το Amazon στο έργο σας Android. Βλέπω Εγκαταστήστε τη σύνδεση με τη βιβλιοθήκη του Amazon .
- Εισαγάγετε το Login με το Amazon API στην πηγή σας
Για να εισαγάγετε το Login με το Amazon API, προσθέστε τις ακόλουθες δηλώσεις εισαγωγής στην πηγή σας file:εισαγωγή com.amazon.identity.auth.device.AuthError; εισαγωγή
com.amazon.identity.auth.device.authorization.api.
AmazonAuthorizationManager; εισαγωγή
com.amazon.identity.auth.device.authorization.api. AuthorizationListener; εισαγωγή com.amazon.identity.auth.device.authorization.api.AuthzConstants; - Αρχικοποίηση AmazonAuthorizationManager.
Θα χρειαστεί να δηλώσετε ένα AmazonAuthorizationManager μεταβλητή και δημιουργήστε μια νέα παρουσία της κλάσης. Η δημιουργία μιας νέας παρουσίας απαιτεί μόνο το τρέχον περιβάλλον της εφαρμογής σας και ένα κενό πακέτο. Το καλύτερο μέρος για προετοιμασία AmazonAuthorizationManager βρίσκεται στο onCreate μέθοδο της δραστηριότητάς σας. Για π.χample: - Δημιουργήστε ένα AuthorizeLiistener.
AuthorizeListener υλοποιεί τη διεπαφή AuthorizationListener και θα επεξεργαστεί το αποτέλεσμα του εξουσιοδοτήστε κλήση Περιέχει τρεις μεθόδους: oinSuccess, έναΣφάλμα, και onCanceil. Κάθε μέθοδος λαμβάνει είτε ένα Bundle είτε ένα Σφάλμα Auth αντικείμενο.ιδιωτική τάξη Το AuthorizeListener υλοποιεί το AuthorizationListener{
/ * Η εξουσιοδότηση ολοκληρώθηκε με επιτυχία. * /
@Καταπατώ
δημόσιο κενό onSuccess(απάντηση πακέτου) {
}
/* Παρουσιάστηκε σφάλμα κατά την προσπάθεια εξουσιοδότησης της εφαρμογής.
*/
@Καταπατώ
δημόσιο κενό onError (AuthError ae) {
}
/* Η εξουσιοδότηση ακυρώθηκε πριν ολοκληρωθεί. */
@Καταπατώ
δημόσιο κενό onCancel (Αιτία δέσμης) {
}
} - Κλήση AmazonAuthorizationManager.authorize.
Στο onClick χειριστή για το κουμπί Σύνδεσή σας με το Amazon, καλέστε εξουσιοδότηση για να ζητήσετε από τον χρήστη να συνδεθεί και να εξουσιοδοτήσει την αίτησή σας.
Αυτή η μέθοδος είναι υπεύθυνη για την εξουσιοδότηση του πελάτη με έναν από τους ακόλουθους τρόπους:- Μεταβαίνει στο πρόγραμμα περιήγησης συστήματος και επιτρέπει στον πελάτη να συνδεθεί και να συναινέσει στο ζητούμενο
- Μεταβαίνει σε web view σε ασφαλές πλαίσιο, για να επιτρέπεται στον πελάτη να συνδεθεί και να συναινέσει στο ζητούμενο
Αυτό το ασφαλές πλαίσιο για το #2 διατίθεται επί του παρόντος ως εφαρμογή Amazon Shopping σε συσκευές Android. Συσκευές που δημιούργησε η Amazon με Fire OS (π.χample Kindle Fire, Fire Phone και Fire TV) χρησιμοποιείτε πάντα αυτήν την επιλογή ακόμα κι αν δεν υπάρχει εφαρμογή Amazon Shopping στη συσκευή. Εξαιτίας αυτού, εάν ο πελάτης είναι ήδη συνδεδεμένος στην εφαρμογή Amazon Shopping, αυτό το API θα παραλείψει τη σελίδα σύνδεσης, οδηγώντας σε Single Sign On εμπειρία για τον πελάτη.
Όταν η αίτησή σας είναι εξουσιοδοτημένη, είναι εξουσιοδοτημένη για ένα ή περισσότερα σύνολα δεδομένων γνωστά ως πεδία. Η πρώτη παράμετρος είναι μια σειρά από πεδία που περιλαμβάνει τα δεδομένα χρήστη που ζητάτε από το Login with Amazon. Την πρώτη φορά που ένας χρήστης θα συνδεθεί στην εφαρμογή σας, θα εμφανιστεί μια λίστα με τα δεδομένα που ζητάτε και θα του ζητηθεί έγκριση. Η σύνδεση με το Amazon υποστηρίζει επί του παρόντος τρία πεδία: profile, το οποίο περιέχει το όνομα του χρήστη, τη διεύθυνση email και το αναγνωριστικό λογαριασμού Amazon. επαγγελματίαςfile:ταυτότητα χρήστη, που περιέχει μόνο το αναγνωριστικό λογαριασμού Amazon. και Ταχυδρομικός Κώδικας, που περιέχει τον ταχυδρομικό κώδικα του χρήστη.
Ο καλύτερος τρόπος για να καλέσετε εξουσιοδότηση είναι η ασύγχρονη, επομένως δεν χρειάζεται να αποκλείσετε το νήμα της διεπαφής χρήστη ή να δημιουργήσετε ένα δικό σας νήμα εργασίας. Για να καλέσετε εξουσιοδοτεί ασύγχρονα, περάστε ένα αντικείμενο που υποστηρίζει το Διεπαφή ακρόασης εξουσιοδότησης ως τελευταία παράμετρος:ιδιωτικό AmazonAuthorizationManager mAuthManager; @Καταπατώ
προστατευμένο κενό onCreate(Bundle savedInstanceState) {
super.onCreate (αποθηκευμένοInstanceState);
mAuthManager = νέο AmazonAuthorizationManager(αυτό, Bundle.EMPTY);// Βρείτε το κουμπί με το αναγνωριστικό login_with_amazon
// και ρυθμίστε ένα πρόγραμμα χειρισμού κλικ
mLoginButton = (Κουμπί) εύρεσηViewById(R.id.login_with_amazon);
mLoginButton.setOnClickListener(new OnClickListener() {
@Καταπατώ
δημόσιο κενό onClick (View v) {
mAuthManager.authorize(
new String []{“profile”,”postal_code”},
Bundle.EMPTY, νέο AuthorizeListener());
}
});
} - Δημιουργία α ProfileΑκροατής.
ProfileΑκροατής είναι το όνομά μας για μια κλάση που υλοποιεί το APIListener διεπαφή και θα επεξεργαστεί το αποτέλεσμα του λάβετε την επαγγελματική έκδοσηfile κλήση. APIListener περιέχει δύο μεθόδους: onSuccess και onError (δεν υποστηρίζει onCancel επειδή δεν υπάρχει τρόπος ακύρωσης a λάβετε την επαγγελματική έκδοσηfile κλήση). onSuccess λαμβάνει ένα αντικείμενο Bundle με profile δεδομένα, ενώ onEriror λαμβάνει ένα Σφάλμα Auth αντικείμενο με πληροφορίες σχετικά με το σφάλμα.ιδιωτική τάξη ProfileΟ ακροατής υλοποιεί το APIListener{ /* getProfile ολοκληρώθηκε με επιτυχία. */ @Παράκαμψη
δημόσιο κενό onSuccess(απάντηση πακέτου) {}
/* Παρουσιάστηκε σφάλμα κατά την προσπάθεια λήψης του επαγγελματίαfile. */ @Παράκαμψη
δημόσιο κενό onError (AuthError ae) {
}
} - Εργαλείο onSuccess για σας AuthorizeListener.
In στην επιτυχία, κλήση AmazonAuthorizationManager.getProfile για να ανακτήσετε τον επαγγελματία πελάτηfile. λάβετε την επαγγελματική έκδοσηfile, όπως εξουσιοδότηση, χρησιμοποιεί μια ασύγχρονη διεπαφή ακροατή. Για λάβετε την επαγγελματική έκδοσηfile, αυτή η διεπαφή είναι APIListener, όχιAuthorizationListener.
/* Η εξουσιοδότηση ολοκληρώθηκε με επιτυχία. */ @Παράκαμψη
δημόσιο κενό onSuccess(απάντηση πακέτου) {
mAuthManager.getProfile(νέο ProfileΑκροατής());} - Εργαλείο onSuccessfor σας ProfileΑκροατής.
onΕπιτυχία δύο κύριες εργασίες: να ανακτήσετε το profile δεδομένα από το πακέτο απόκρισης και για να μεταβιβαστούν τα δεδομένα στη διεπαφή χρήστη. updateProfileDatais μια υποθετική λειτουργία που θα μπορούσε να εφαρμόσει η εφαρμογή σας για προβολή επαγγελματιώνfile καθέκαστα. setLoggedInState, μια άλλη υποθετική συνάρτηση, θα έδειχνε ότι ένας χρήστης είναι συνδεδεμένος και θα του έδινε ένα μέσο αποσύνδεση.
Για να ανακτήσετε το profile δεδομένα από το Bundle, χρησιμοποιούμε ονόματα που αποθηκεύονται από το AuthzConstants τάξη. ο onSuccess το πακέτο περιέχει το profile δεδομένα σε ένα BUNDLE_KEY.PROFILE δέσμη.
Εντός του υπέρfile δέσμη, τα δεδομένα πεδίου ευρετηριάζονται κάτω από PROFILE_KEY.NAME, PROFILE_KEY.EMAIL, PROFILE_KEY.USER_ID, και PROFILE_KEY.POSTAL_CODE. PROFILE_KEY.POSTAL_CODE περιλαμβάνεται μόνο εάν το ζητήσετε ταχυδρομικός_κώδικας έκταση.@Καταπατώ
δημόσιο κενό onSuccess(απάντηση πακέτου) {
// Ανακτήστε τα δεδομένα που χρειαζόμαστε από το Bundle Bundle profileBundle = answer.getBundle(
AuthzConstants.BUNDLE_KEY.PROFILE.val);
Όνομα συμβολοσειράς = επαγγελματίαςfileBundle.getString(
AuthzConstants.PROFILE_KEY.NAME.val);
String email = profileBundle.getString(
AuthzConstants.PROFILE_KEY.EMAIL.val);
Λογαριασμός συμβολοσειράς = επαγγελματίαςfileBundle.getString(
AuthzConstants.PROFILE_KEY.USER_ID.val);
Ταχυδρομικός κώδικας συμβολοσειράς = profileBundle.getString(
AuthzConstants.PROFILE_KEY.POSTAL_CODE.val);
runOnUiThread(new Runnable() { @Override
public void run() {
updateProfileΔεδομένα (όνομα, email, λογαριασμός, ταχυδρομικός κώδικας).
}
});
} - Εργαλείο έναΣφάλμα για σας ProfileΑκροατής.
έναΣφάλμα περιλαμβάνει ένα Σφάλμα Auth αντικείμενο που περιέχει λεπτομέρειες σχετικά με το σφάλμα./* Παρουσιάστηκε σφάλμα κατά την προσπάθεια λήψης του επαγγελματίαfile. */ @Παράκαμψη
δημόσιο κενό onError (AuthError ae) {
/* Δοκιμάστε ξανά ή ενημερώστε τον χρήστη για το σφάλμα */
} - Εργαλείο έναΣφάλμαγια σας AuthorizeListener.
/* Παρουσιάστηκε σφάλμα κατά την προσπάθεια εξουσιοδότησης της εφαρμογής.
*/
@Καταπατώ
δημόσιο κενό onError (AuthError ae) {
/ * Ενημερώστε τον χρήστη για το σφάλμα * /
} - Εργαλείο onCancefor σας AuthorizeListener.
Επειδή η διαδικασία εξουσιοδότησης παρουσιάζει μια οθόνη σύνδεσης (και πιθανώς μια οθόνη συναίνεσης) στον χρήστη σε ένα web πρόγραμμα περιήγησης (ή webview), ο χρήστης θα έχει την ευκαιρία να ακυρώσει τη σύνδεση ή να απομακρυνθεί από το web σελίδα. Εάν ακυρώσουν ρητά τη διαδικασία σύνδεσης, onCancel ονομάζεται. Αν onCancelis κληθεί, θα θέλετε να επαναφέρετε τη διεπαφή χρήστη σας./* Η εξουσιοδότηση ακυρώθηκε πριν ολοκληρωθεί. */
@Καταπατώ
δημόσιο κενό onCancel (Αιτία δέσμης) {
/* επαναφέρει τη διεπαφή χρήστη σε κατάσταση έτοιμη για σύνδεση */
}Σημείωμα: Εάν ο χρήστης απομακρυνθεί από την οθόνη σύνδεσης στο πρόγραμμα περιήγησης ή web view και επιστρέφει στην εφαρμογή σας, το SDK δεν θα εντοπίσει ότι η σύνδεση δεν ολοκληρώθηκε. Εάν εντοπίσετε δραστηριότητα χρήστη στην εφαρμογή σας πριν ολοκληρωθεί η σύνδεση, μπορείτε να υποθέσετε ότι έχουν απομακρυνθεί από το πρόγραμμα περιήγησης και να αντιδράσουν ανάλογα.
Ελέγξτε για σύνδεση χρήστη κατά την εκκίνηση
Εάν ένας χρήστης συνδεθεί στην εφαρμογή σας, κλείσει την εφαρμογή και επανεκκινήσει την εφαρμογή αργότερα, η εφαρμογή εξακολουθεί να είναι εξουσιοδοτημένη να ανακτά δεδομένα. Ο χρήστης δεν αποσυνδέεται αυτόματα. Κατά την εκκίνηση, μπορείτε να εμφανίσετε τον χρήστη ως συνδεδεμένο εάν η εφαρμογή σας εξακολουθεί να είναι εξουσιοδοτημένη. Αυτή η ενότητα εξηγεί πώς να χρησιμοποιήσετε το getToken για να δείτε εάν η εφαρμογή εξακολουθεί να είναι εξουσιοδοτημένη.
- Δημιουργία α TokenListener.
TokenListener υλοποιεί το APIListener διεπαφή και θα επεξεργαστεί το αποτέλεσμα της κλήσης getToken. APIListener περιέχει δύο μεθόδους: onSuccess και έναΣφάλμα (δεν υποστηρίζει onCancel επειδή δεν υπάρχει τρόπος ακύρωσης a getToken κλήση). onSuccess λαμβάνει ένα αντικείμενο Bundle με δεδομένα διακριτικού, ενώ έναΣφάλμα λαμβάνει ένα Σφάλμα Auth αντικείμενο με πληροφορίες σχετικά με το σφάλμα.ιδιωτική κλάση TokenListener υλοποιεί το APIListener{ /* Το getToken ολοκληρώθηκε με επιτυχία. */ @Παράκαμψη
δημόσιο κενό onSuccess(απάντηση πακέτου) {
}
/* Παρουσιάστηκε σφάλμα κατά την προσπάθεια λήψης του διακριτικού. */ @Παράκαμψη
δημόσιο κενό onError (AuthError ae) {
}
} - Στο onStart μέθοδος της δραστηριότητάς σας, καλέστε getToken για να δείτε εάν η εφαρμογή εξακολουθεί να είναι εξουσιοδοτημένη.
getToken ανακτά το αρχικό διακριτικό πρόσβασης που το AmazonAuthorizationManager χρησιμοποιεί για πρόσβαση σε έναν επαγγελματία πελάτηfile. Εάν η τιμή του διακριτικού δεν είναι μηδενική, τότε η εφαρμογή εξακολουθεί να είναι εξουσιοδοτημένη και μια κλήση προς λάβετε την επαγγελματική έκδοσηfile πρέπει να πετύχει. getTokenrequires τα ίδια πεδία που ζητήσατε στην κλήση σας για εξουσιοδότηση.
getTokensupports ασύγχρονες κλήσεις με τον ίδιο τρόπο όπως το getProfile, έτσι δεν χρειάζεται να αποκλείσετε το νήμα της διεπαφής χρήστη ή να δημιουργήσετε ένα δικό σας νήμα εργασίας. Για να καλέσετε το getToken ασύγχρονα, περάστε ένα αντικείμενο που υποστηρίζει το APIListener διεπαφή ως τελική παράμετρος.@Καταπατώ
προστατευμένο κενό onStart(){
super.onStart
();mAuthManager.getToken(new String []{“profile”,”postal_code”},
νέος
TokenListener());
} - Εργαλείο onSuccess για σας TokenListener.
onΕπιτυχία δύο εργασίες: να ανακτήσετε το διακριτικό από το πακέτο και, εάν το διακριτικό είναι έγκυρο, να καλέσετε λάβετε την επαγγελματική έκδοσηfile.
Για να ανακτήσουμε τα δεδομένα διακριτικού από το Bundle, χρησιμοποιούμε ονόματα που είναι αποθηκευμένα από το AuthzConstants τάξη. ο onSuccess Το πακέτο περιέχει τα δεδομένα διακριτικού σε μια τιμή BUNDLE_KEY.TOKEN. Εάν αυτή η τιμή δεν είναι μηδενική, αυτό π.χampκαλεί λάβετε την επαγγελματική έκδοσηfile χρησιμοποιώντας τον ίδιο ακροατή που δηλώσατε στην προηγούμενη ενότητα (βλ. βήματα 7 και 8)./* getToken ολοκληρώθηκε με επιτυχία. */
@Καταπατώ
δημόσιο κενό onSuccess(απάντηση πακέτου) {
τελική συμβολοσειρά authzToken =
answer.getString(AuthzConstants.BUNDLE_KEY.TOKEN.val);
if (!TextUtils.isEmpty(authzToken))
{
// Ανακτήστε το profile δεδομένα
mAuthManager.getProfile(νέο ProfileΑκροατής());
}
}
Η μέθοδος clearAuthorizationState θα διαγράψει τα δεδομένα εξουσιοδότησης του χρήστη από τον τοπικό χώρο αποθήκευσης δεδομένων AmazonAuthorizationManager. Ένας χρήστης θα πρέπει να συνδεθεί ξανά για να μπορέσει η εφαρμογή να ανακτήσει profile δεδομένα. Χρησιμοποιήστε αυτήν τη μέθοδο για να αποσυνδεθείτε από έναν χρήστη ή για να αντιμετωπίσετε προβλήματα σύνδεσης στην εφαρμογή.
- Εφαρμογή αποσύνδεσης
Όταν ένας χρήστης έχει συνδεθεί επιτυχώς, θα πρέπει να παράσχετε έναν μηχανισμό αποσύνδεσης, ώστε να μπορεί να διαγράψει το επαγγελματικό τουfile δεδομένα και προηγουμένως εγκεκριμένα πεδία. Ο μηχανισμός σας μπορεί να είναι ένας υπερσύνδεσμος ή ένα στοιχείο μενού. Για αυτό το πρώηνample θα δημιουργήσουμε ένα onClick μέθοδος για ένα κουμπί. - Στο πρόγραμμα χειρισμού αποσύνδεσής σας, καλέστε clearAuthorizationState. clearAuthorizationState θα αφαιρέσει τα δεδομένα εξουσιοδότησης ενός χρήστη (tokens πρόσβασης, profile) από το τοπικό κατάστημα. clearAuthorizationStatetakes καμία παράμετρος εκτός από ένα APIListener να επιστρέψει την επιτυχία ή
- Δηλώστε ανώνυμο APIListener.
Οι ανώνυμες κλάσεις είναι μια χρήσιμη εναλλακτική λύση στη δήλωση μιας νέας κλάσης για εφαρμογή APIListener. Βλέπω Χειριστείτε το κουμπί σύνδεσης και αποκτήστε επαγγελματίεςfile Δεδομένα (σελ. 17) για έναν exampαφήστε ότι δηλώνει τάξεις ακροατή. - Εργαλείο onSuccess μέσα στο APIListener
Οταν clearAuthorizationState θα πρέπει να ενημερώσετε τη διεπαφή χρήστη σας για να καταργήσετε τις αναφορές στον χρήστη και να παρέχετε έναν μηχανισμό σύνδεσης που μπορούν να χρησιμοποιήσουν οι χρήστες για να συνδεθούν ξανά. - Εργαλείο έναΣφάλμα μέσα στο APIListener.
If clearAuthorizationStatereurns ένα σφάλμα, μπορείτε να αφήσετε τον χρήστη να προσπαθήσει να αποσυνδεθεί ξανά.@Καταπατώ
προστατευμένο κενό onCreate(Bundle savedInstanceState) {
super.onCreate (αποθηκευμένοInstanceState);
/ * Οι προηγούμενες δηλώσεις onCreate παραλείφθηκαν * /
// Βρείτε το κουμπί με το αναγνωριστικό αποσύνδεσης και ρυθμίστε ένα πρόγραμμα χειρισμού κλικ
mLogoutButton = (Κουμπί) εύρεσηViewById(R.id.logout);
mLogoutButton.setOnClickListener(new OnClickListener() {
@Καταπατώ
δημόσιο κενό onClick (View v) {
mAuthManager.clearAuthorizationState(νέο
APIListener() {
@Καταπατώ
δημόσιο κενό onSuccess(Αποτελέσματα δέσμης) {
// Ορίστε κατάσταση αποσύνδεσης στο περιβάλλον χρήστη
}
@Καταπατώ
public void onError (AuthError authError) {
// Καταγράψτε το σφάλμα
}
});
}
});
}
Μερικοί AmazonAuthorizationManager Οι μέθοδοι επιστρέφουν ένα αντικείμενο Future. Αυτό σας επιτρέπει να καλέσετε τη μέθοδο συγχρονισμένα αντί να μεταβιβάσετε έναν ακροατή ως παράμετρο. Εάν χρησιμοποιείτε ένα αντικείμενο Future, δεν πρέπει να το χρησιμοποιείτε σε ένα νήμα διεπαφής χρήστη. Εάν αποκλείσετε ένα νήμα διεπαφής χρήστη για περισσότερα από πέντε δευτερόλεπτα, θα λάβετε ένα μήνυμα ANR (Η εφαρμογή δεν ανταποκρίνεται). Στο Handle the Login Button και Get Profile Δεδομένα πample , το onSuccess μέθοδο για AuthorizeListener καλείται με ένα νήμα εργάτη που δημιουργήθηκε από AmazonAuthorizationManager. Αυτό σημαίνει ότι είναι ασφαλές να χρησιμοποιήσετε αυτό το νήμα για να καλέσετε το getPirofile συγχρονισμένα. Για να πραγματοποιήσετε μια σύγχρονη κλήση, εκχωρήστε την τιμή επιστροφής από getPirofile σε ένα αντικείμενο Future και καλέστε το gietmethod σε αυτό το αντικείμενο για να περιμένετε μέχρι να ολοκληρωθεί η μέθοδος.
Fuiture.get επιστρέφει ένα αντικείμενο Bundle που περιέχει α FUTURE_TYPE αξία του ΕΠΙΤΥΧΙΑ, ΣΦΑΛΜΑ, or ΜΑΤΑΙΩΣΗ. Εάν η μέθοδος ήταν επιτυχής, το ίδιο πακέτο θα περιέχει PROFILE_Τιμές KEY για τον επαγγελματίαfile δεδομένα. Για π.χample:
| / * Η εξουσιοδότηση ολοκληρώθηκε με επιτυχία. * / @Καταπατώ δημόσιο κενό onSuccess(απάντηση πακέτου) { Future<Bundle> future = mAuthManager.getProfile(άκυρος); Αποτέλεσμα δέσμης = future.get();// Μάθετε εάν η κλήση πέτυχε και ανακτήστε τον επαγγελματίαfile Αντικείμενο future_type = result.get(AuthzConstants.BUNDLE_KEY.FUTURE.val); if (future_type == AuthzConstants.FUTURE_TYPE.SUCCESS) { Όνομα συμβολοσειράς = result.getString( AuthzConstants.PROFILE_KEY.NAME.val); String email = result.getString( AuthzConstants.PROFILE_KEY.EMAIL.val); Λογαριασμός συμβολοσειράς = result.getString( AuthzConstants.PROFILE_KEY.USER_ID.val); Ταχυδρομικός κώδικας συμβολοσειράς = result.getString( AuthzConstants.PROFILE_KEY.POSTAL_CODE.val); runOnUiThread(new Runnable() { @Override public void run() { updateProfileΔεδομένα (όνομα, email, λογαριασμός, ταχυδρομικός κώδικας); } }); } αλλιώς εάν (future_type == AuthzConstants.FUTURE_TYPE.ERROR) { // Λήψη αντικειμένου σφάλματος AuthError authError = AuthError.extractError(result); /* Χρησιμοποιήστε το authError για τη διάγνωση του σφάλματος */ } |
Σύνδεση με Amazon Οδηγός έναρξης για Android – Λήψη [βελτιστοποιημένη]
Σύνδεση με Amazon Οδηγός έναρξης για Android – Λήψη



