
Уваход у сістэму з пачатковым кіраўніцтвам Amazon для праграм Android

Уваход праз Amazon: Кіраўніцтва па пачатку працы для Android
Аўтарскае права © 2017 Amazon.com, Inc. або яе філіялы. Усе правы ахоўваюцца.
Amazon і лагатып Amazon з'яўляюцца гандлёвымі маркамі Amazon.com, Inc. або яе філіялаў. Усе іншыя гандлёвыя маркі, якія не належаць Amazon, з'яўляюцца ўласнасцю іх адпаведных уладальнікаў.
Усталюйце інструменты распрацоўшчыка Android
Login with Amazon SDK для Android дапаможа вам дадаць Login with Amazon у вашы праграмы Android, Fire TV і Fire Tablet. Мы рэкамендуем вам выкарыстоўваць Login with Amazon SDK для Android з Android Studio. Інструкцыі па ўсталяванні Android Studio і наладжванні Android SDK гл Атрымайце Android SDK на developer.android.com.
Каб выкарыстоўваць Login with Amazon SDK для Android, ваша прыкладанне Android павінна адпавядаць аднаму з наступных мінімальных патрабаванняў:
- Мінімальная версія SDK (minSdkVersion) Android 0 (узровень API 11) або вышэй.
- Мінімальная версія SDK (minSdkVersion) Android 2.2 (API Level 8) або вышэй з v4 Падтрымка Android Бібліятэка.
Калі Android SDK усталяваны, знайдзіце Менеджэр SDK дадатак у вашай ўстаноўцы Android. Для распрацоўкі для Login with Amazon вы павінны выкарыстоўваць SDK Manager, каб усталяваць мінімальныя патрабаванні SDK, прыведзеныя вышэй. Глядзіце Даданне пакетаў SDK на developer.android.com для атрымання дадатковай інфармацыі аб выкарыстанні SDK Manager.
Пасля ўстаноўкі SDK наладзьце віртуальную прыладу Android (AVD) для запуску вашых праграм. Глядзіце Кіраванне Віртуальныя прылады на developer.android.com для інструкцый па наладжванні віртуальнай прылады.
Калі ваша асяроддзе распрацоўкі наладжана, вы можаце Усталюйце Login with Amazon SDK для Android or Запусціце Sampпрыкладанне, як апісана ніжэй
Усталюйце Login with Amazon SDK для Android
Login with Amazon SDK для Android пастаўляецца ў двух пакетах. Першы змяшчае бібліятэку Android і дапаможную дакументацыю. Другі змяшчае якample прыкладанне, якое дазваляе карыстальніку ўвайсці ў сістэму і адлюстроўвае іх праfile дадзеныя.
Калі вы яшчэ не ўсталявалі Android SDK або Android Development Tools, гл Ўстаноўка інструменты распрацоўшчыка Android раздзел вышэй.
- Спампаваць маланкавы і здабываць files у каталог на вашым цвёрдым дыску. Вы павінны ўбачыць а дакументы і а ліб падкаталог.
- Адкрыты дакументы/index.html каб view даведка па API ўваходу ў Amazon Android.
- Глядзіце Усталюйце бібліятэку Login with Amazon каб атрымаць інструкцыі аб тым, як дадаць бібліятэку і дакументацыю ў Android
Калі ўсталяваны Login with Amazon SDK для Android, вы можаце Стварыце новы лагін з Amazon Праект пасля цябе Зарэгіструйцеся ў Login with Amazon.
Запусціце Sampпрыкладанне
Каб запусціць sample дадатак, імпартаваць sampу працоўную вобласць AndroidStudio.
- Спампаваць SampleLoginWithAmazonAppForAndroid-src.zip і здабываць files у каталог на вашым жорсткім абсталяванні
- Запусціце Android Studio і абярыце Адкрыйце існуючы праект Android Studio.
- Перайдзіце да SampleLoginWithAmazonApp каталог, атрыманы пасля распакавання загружанага zip file на этапе 1.
- Ад ст Будаваць меню, націсніце Зрабіць праект, і дачакайцеся завяршэння стварэння праекта.
- Ад ст Бегчы меню, націсніце Бегчы а затым націсніце SampleLoginWithAmazonApp.
- Выберыце эмулятар або падключаную прыладу Android і націсніце Бегчы.
Зарэгіструйцеся з Увайсці на Amazon
Перш чым вы зможаце выкарыстоўваць Увайсці з Amazon на a webна сайце або ў мабільным дадатку, вы павінны зарэгістраваць прыкладанне ў Login with Amazon. Ваша дадатак Login with Amazon - гэта рэгістрацыя, якая змяшчае асноўную інфармацыю аб вашым бізнэсе і інфармацыю аб кожным webствораны вамі сайт або мабільнае прыкладанне, якое падтрымлівае ўваход праз Amazon. Гэтая бізнес-інфармацыя паказваецца карыстальнікам кожны раз, калі яны выкарыстоўваюць Login with Amazon на вашым webсайта або мабільнага прыкладання. Карыстальнікі ўбачаць назву вашага прыкладання, ваш лагатып і спасылку на вашу палітыку прыватнасці. Гэтыя крокі дэманструюць, як зарэгістраваць прыкладанне Android для выкарыстання з уваходам у Amazon.
Зарэгіструйце свой лагін у праграме Amazon
- Перайсці да https://login.amazon.com.
- Калі вы ўжо падпісаліся на Уваход з Amazon, націсніце Кансоль праграмы. У адваротным выпадку націсніце Зарэгіструйцеся. Вы будзеце перанакіраваны ў Seller Central, які займаецца рэгістрацыяй прыкладанняў для ўваходу ў сістэму. Калі вы ўпершыню карыстаецеся Seller Central, вам будзе прапанавана наладзіць уліковы запіс Seller Central.
- Націсніце Зарэгістраваць новую заяўку. The Зарэгіструйце сваю заяўку з'явіцца форма:
a. У ст Зарэгіструйце сваю заяўку форму, увядзіце a Імя і а Апісанне для вашага прыкладання.
The Імя гэта імя, якое адлюстроўваецца на экране згоды, калі карыстальнікі згаджаюцца падзяліцца інфармацыяй з вашым дадаткам. Гэта назва прымяняецца да Android, iOS і webверсіі сайта вашага прыкладання. The Апісанне дапамагае вам адрозніць кожнае з вашых прыкладанняў Login with Amazon і не паказваецца карыстальнікам.
b. Увядзіце a Паведамленне аб прыватнасці URL для вашага прыкладання.
The Паведамленне аб прыватнасці URL гэта месцазнаходжанне палітыкі прыватнасці вашай кампаніі або прыкладання (напрыклад,ampле, http://www.example.com/privacy.html). Гэтая спасылка паказваецца карыстальнікам на экране згоды.
c. Калі вы хочаце дадаць a Выява лагатыпа для вашага прыкладання, націсніце Праглядзіце і знайдзіце прыдатны малюнак. - Націсніце Захаваць. Ваша сampрэгістрацыя павінна выглядаць прыкладна так:

Пасля захавання асноўных налад прыкладання вы можаце дадаць налады для канкрэтнага webсайтаў і мабільных прыкладанняў, якія будуць выкарыстоўваць гэта Уваход з уліковым запісам Amazon.
Дадайце налады Android у сваё прыкладанне
Каб зарэгістраваць прыкладанне для Android, вы можаце зарэгістраваць прыкладанне праз Amazon Appstore (Дадайце праграму Android для Amazon Appstore) або непасрэдна з Увайсці праз Amazon (Дадаць Android дадатак без Appstore). Калі ваша праграма зарэгістравана, вы атрымаеце доступ да ключа API, які дасць вашай праграме доступ да службы аўтарызацыі «Уваход з Amazon».
Заўвага: Калі вы плануеце выкарыстоўваць Amazon Device Messaging у сваёй праграме для Android, звяжыцеся з намі лва-support@amazon.com з:
- Адрас электроннай пошты ўліковага запісу Amazon, які вы выкарыстоўвалі для рэгістрацыі для ўваходу
- Адрас электроннай пошты ўліковага запісу Amazon, які вы выкарыстоўвалі для рэгістрацыі ў Amazon Appstore (калі іншы).
- Імя ў вашым уліковым запісе Seller Central (у Seller Central націсніце Налады > Інфармацыя аб уліковым запісе > Інфармацыя пра прадаўца, і выкарыстоўваць Адлюстраванае імя).
- Імя ў вашым уліковым запісе распрацоўшчыка Amazon Appstore (на сайце распаўсюджвання мабільных праграм націсніце Налады > Company Profile і выкарыстоўваць Імя распрацоўшчыка або назва кампаніі).
Дадайце праграму Android для Amazon Appstore
Наступныя крокі дададуць праграму Amazon Appstore да вашага ўліковага запісу Login with Amazon:
- На экране прыкладання націсніце Налады Android. Калі ў вас ужо ёсць зарэгістраванае прыкладанне для Android, знайдзіце Дадаць ключ API кнопка ў Налады Android выбар
The Падрабязнасці прыкладання для Android з'явіцца форма: - Выберыце так у адказ на пытанне «Ці распаўсюджваецца гэта дадатак праз Amazon Appstore?»
- Увядзіце Этыкетка вашага Android App. Гэта не павінна быць афіцыйная назва вашага прыкладання. Ён проста ідэнтыфікуе гэта канкрэтнае прыкладанне для Android сярод праграм і webсайты, зарэгістраваныя для вашага ўваходу ў Amazon
- Дадайце сваё Ідэнтыфікатар Amazon Appstore.
- Калі вы самастойна падпісалі сваю праграму, дадайце інфармацыю пра самападпісванне. Гэта дазволіць вам атрымаць ключ API падчас распрацоўкі без непасрэднага выкарыстання Appstore.
a. Калі ваша праграма не падпісваецца праз Amazon Appstore, выберыце так у адказ на пытанне «Ці самападпісваецца гэта дадатак?»
The Падрабязнасці прыкладання для Android форма будзе пашырацца

b. Увядзіце свой Назва пакета.
Гэта павінна адпавядаць назве пакета вашага праекта Android. Каб вызначыць назву пакета вашага праекта Android, адкрыйце праект у выбраным вамі інструменце распрацоўшчыка Android. Адкрыты
AndroidManifest.XML у Правадыру пакетаў і абярыце Маніфест укладка. Першы запіс - гэта Пакет імя.
c. Увядзіце праграму Подпіс.
Гэта хэш-значэнне SHA-256, якое выкарыстоўваецца для праверкі вашага прыкладання. Подпіс павінен быць у выглядзе 32 шаснаццатковых пар, падзеленых двукроп'ем (напр.ampль: 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:23:45:67:89:ab:cd:ef). Глядзіце Подпісы праграм Android і ключы API крокі, якія вы можаце выкарыстоўваць, каб атрымаць подпіс з вашага праекта.
6. Націсніце Захаваць.
Дадайце праграму для Android без Appstore
Калі вы жадаеце зарэгістраваць сваё прыкладанне для Android без выкарыстання Amazon Appstore, вы можаце скарыстацца наступнымі крокамі, каб зарэгістраваць назву і подпіс вашага пакета з дапамогай Login with Amazon:
- На экране прыкладання націсніце Налады Android. Калі ў вас ужо ёсць зарэгістраванае прыкладанне для Android, знайдзіце Дадаць ключ API кнопка ў Налады Android The Падрабязнасці прыкладання для Android з'явіцца форма:

- Выберыце няма у адказ на пытанне «Ці распаўсюджваецца гэта дадатак праз Amazon Appstore?»
- Увядзіце Этыкетка вашага Android
Гэта не павінна быць афіцыйная назва вашага прыкладання. Ён проста ідэнтыфікуе гэта канкрэтнае прыкладанне для Android сярод праграм і webсайтаў, якія вы зарэгістравалі. - Увядзіце свой Назва пакета. Гэта павінна адпавядаць назве пакета вашага праекта Android.
Каб вызначыць назву пакета вашага праекта Android, адкрыйце праект у выбраным вамі інструменце распрацоўшчыка Android. Адкрыты AndroidManifest.XML у Правадыру пакетаў і абярыце Маніфест укладка. Першы запіс - гэта Пакет імя. - Увядзіце праграму Подпіс.
Гэта хэш-значэнне SHA-256, якое выкарыстоўваецца для праверкі вашага прыкладання. Подпіс павінен быць у выглядзе 32 шаснаццатковых пар, падзеленых двукроп'ем (напр.ampль: 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:23:45:67:89:ab:cd:эф). Глядзіце Подпісы праграм Android і ключы API раздзел ніжэй для крокаў, якія вы можаце выкарыстоўваць, каб атрымаць подпіс з вашага праекта. - Націсніце Захаваць.
Калі розныя версіі вашай праграмы маюць розныя подпісы або назвы пакетаў, напрыклад, для адной або некалькіх тэставых версій і вытворчай версіі, для кожнай версіі патрабуецца ўласны ключ API. Ад Налады Android вашага прыкладання, націсніце Дадаць ключ API кнопка для стварэння дадатковых ключоў для вашай праграмы (па адным для кожнай версіі).
Подпісы праграм Android і ключы API
Подпіс праграмы - гэта хэш-значэнне SHA-256, якое прымяняецца да кожнай праграмы Android пры яе стварэнні. Amazon выкарыстоўвае подпіс праграмы для стварэння вашага ключа API. Ключ API дазваляе службам Amazon распазнаваць вашу праграму. Калі вы выкарыстоўваеце Amazon Appstore для падпісання сваёй праграмы, ключ API прадастаўляецца аўтаматычна. Калі вы не карыстаецеся Amazon Appstore, вам трэба будзе кіраваць ключом API ўручную.
Подпісы праграм захоўваюцца ў сховішчы ключоў. Як правіла, для праграм Android ёсць сховішча ключоў адладкі і сховішча ключоў выпуску. Каб знайсці месцазнаходжанне сховішча ключоў адладкі ў Android Studio, адкрыйце Будаваць меню, абярыце Рэдагаваць Тыпы зборкі, затым перайдзіце да Падпісанне і знайдзіце сховішча ключоў адладкі ў Крама File поле.
Сховішча ключоў выпуску звычайна ствараецца, калі вы экспартуеце сваю праграму Android для стварэння падпісанага APK file. У працэсе экспарту, калі вы ствараеце новае сховішча ключоў выпуску, вы выбіраеце яго месцазнаходжанне. Па змаўчанні ён будзе размешчаны ў тым жа месцы, што і стандартны KeyStore адладкі.
Калі вы зарэгістравалі сваю праграму з дапамогай сігнатуры адладкі падчас распрацоўкі, вам трэба будзе дадаць новую наладу Android у сваю праграму, калі вы будзеце гатовыя выпусціць праграму. Новая налада праграмы павінна выкарыстоўваць подпіс са сховішча ключоў выпуску.
Глядзіце Падпісанне вашых заявак на developer.android.com для атрымання дадатковай інфармацыі.
Вызначыць подпіс Android App
- Калі ў вас ёсць падпісаны APK file:
a. Распакуйце APK file і выняць CERT.RSA. (Пры неабходнасці вы можаце перайменаваць пашырэнне APK у ZIP).
b. З каманднага радка запусціце:keytool -printcert -file CERT.RSA Keytools размешчаны ў в бункер каталог вашай ўстаноўкі Java.
- Калі ў вас ёсць сховішча ключоў file:
a. З каманднага радка запусціце:keytool -list -v -alias -сховішча ключоўfileімя> Ключавы інструмент знаходзіцца ў в бункер каталог вашай ўстаноўкі Java. Псеўданім - гэта назва ключа, які выкарыстоўваецца для подпісу праграмы.
b. Увядзіце пароль для ключа і націсніце Увайдзіце. - Пад Адбіткі пальцаў сертыфіката, скапіяваць SHA256 значэнне.
Атрымаць ключ Android API
Калі вы зарэгістравалі наладу Android і ўвялі подпіс праграмы, вы можаце атрымаць ключ API са старонкі рэгістрацыі для вашай праграмы Login with Amazon. Вам трэба будзе змясціць гэты ключ API ў a file у вашым праекце Android. Пакуль вы гэтага не зробіце, праграма не будзе аўтарызавана звязвацца са службай аўтарызацыі Login with Amazon.
- Перайсці да https://login.amazon.com.
- Націсніце Кансоль праграмы.
- У ст Прыкладанні поле злева, выберыце свой
- Знайдзіце сваю праграму Android пад Налады Android раздзел (Калі вы яшчэ не зарэгістравалі праграму для Android, гл Дадайце праграму Android для Amazon Appstore).
- Націсніце Стварыце значэнне ключа API. Усплывальнае акно пакажа ваш API. Каб скапіяваць ключ, націсніце Выбраць усе каб выбраць увесь ключ.
Заўвага: Значэнне ключа API часткова заснавана на часе яго стварэння. Такім чынам, наступныя значэнні ключа API, якія вы ствараеце, могуць адрознівацца ад зыходнага. Вы можаце выкарыстоўваць любое з гэтых ключавых значэнняў API у сваёй праграме, бо ўсе яны сапраўдныя. - Глядзіце Дадайце ключ API да свайго праекта каб атрымаць інструкцыі па даданні ключа API да вашага Android
Стварыце ўваход з Amazon Project
У гэтым раздзеле вы даведаецеся, як стварыць новы праект Android для ўваходу праз Amazon, наладзіць праект і дадаць у праект код для ўваходу карыстальніка з дапамогай Login with Amazon. Мы будзем апісваць крокі для Android Studio, але вы можаце прымяніць аналагічныя крокі да любога інструмента распрацоўкі IDE або Android па вашаму выбару.
Гэта кіраўніцтва патрабуе разумення Мерапрыемствы – ключавая канцэпцыя распрацоўкі прыкладанняў для Android. Даведайцеся больш аб Мерапрыемствы і Фрагменты дзейнасці на developer.android.com.
Стварыце новы лагін з Amazon Project
Калі ў вас яшчэ няма праекта прыкладання для выкарыстання ўваходу ў Amazon, выканайце інструкцыі ніжэй, каб стварыць яго. Калі ў вас ёсць праграма, перайдзіце да Усталюйце бібліятэку Login with Amazon.
- Запуск Android
- Ад ст File меню, абярыце Новы і Праект.
- Увядзіце ан Назва прыкладання і Назва кампаніі для вашага
- Увядзіце Ужыванне і Назва кампаніі які адпавядае назве пакета, які вы абралі пры рэгістрацыі вашага прыкладання ў Login with Amazon.
Калі вы яшчэ не зарэгістравалі сваю праграму, абярыце Назва пакета а затым выконвайце інструкцыі ў Рэгістрацыя з дапамогай Login with Amazon пасля стварэння праекта. Калі назва пакета вашай праграмы не супадае з назвай зарэгістраванага пакета, вашы званкі "Увайсці праз Amazon" не будуць мець поспеху. - Выберыце а Мінімальна неабходны SDK API 11: Android 3.0 (Honeycomb) або вышэй, і націсніце Далей. У якасці альтэрнатывы вы можаце выкарыстоўваць a Мінімальна неабходны SDK API 8: Android 2.2 (Froyo) або вышэй пры выкарыстанні v4 Бібліятэка падтрымкі Android.
- Выберыце тып дзейнасці, які вы хочаце стварыць, і націсніце Далей.
- Запоўніце адпаведныя дадзеныя і націсніце Скончыць.
Цяпер у вашай працоўнай вобласці будзе новы праект, які вы можаце выкарыстоўваць для выкліку Login with Amazon.
Усталюйце бібліятэку Login with Amazon
Калі вы яшчэ не спампавалі Login with Amazon SDK для Android, гл Усталюйце Login with Amazon SDK для Android.
- Выкарыстоўваючы file сістэмы на вашым кампутары, знайдзіце login-with-amazon-sdk.jar file у рамках Login with Amazon SDK для Android. Скапіруйце яго ў буфер абмену.
- Калі ваш праект адкрыты ў Android Studio, адкрыйце Праект View.
- Пстрыкніце правай кнопкай мышы на бацькоўскім каталогу для вашага праекта/праграмы ў Праект View і абярыце Уставіць.
- Пстрыкніце правай кнопкай мышы login-with-amazon-sdk.jar у Праект View і абярыце Дадаць як бібліятэку.
Усталюйце сеткавыя дазволы для вашай праграмы
Каб ваша праграма магла выкарыстоўваць уваход праз Amazon, яна павінна мець доступ да Інтэрнэту і інфармацыі аб стане сеткі. Ваша праграма павінна заявіць гэтыя дазволы ў вашым маніфесце Android, калі гэтага яшчэ няма.
- Ад ст Праект View, двойчы пстрыкніце xml, каб адкрыць яго.
- Скапіруйце радкі кода, паказаныя ніжэй, і ўстаўце іх у xml file, па-за блокам прыкладання:
Exampль:

Дадайце ключ API да свайго праекта
Калі вы рэгіструеце сваё прыкладанне для Android у Login with Amazon, вам прысвойваецца ключ API. Гэта ідэнтыфікатар, які менеджэр аўтарызацыі Amazon будзе выкарыстоўваць для ідэнтыфікацыі вашай праграмы ў службе аўтарызацыі «Уваход з Amazon». Калі вы выкарыстоўваеце Amazon Appstore для падпісання сваёй праграмы, Appstore аўтаматычна прадаставіць ключ API. Калі вы не карыстаецеся Amazon Appstore, Amazon Authorization Manager загружае гэта значэнне падчас выканання з api_key.txt file у актывы каталог.
- Калі ў вас яшчэ няма ключа API, выконвайце інструкцыі ў Атрымаць ключ Android API.
- Ад ст Праект View у Android Studio, пстрыкніце правай кнопкай мышы тэчку актываў, затым націсніце Новы і абярыце File. Калі ў вас няма тэчкі актываў, пстрыкніце правай кнопкай мышы бацькоўскі каталог для вашага праекта і выберыце Новы, Папка, Тэчка актываў.
- Назавіце file api_key.txt.
- Цяпер у вас павінна быць акно рэдактара для тэксту file названы txt. Дадайце ў тэкст свой ключ API file.
- У ст File меню, націсніце Захаваць.
Заўвага: Калі тэкставы рэдактар дадае дадатковыя сімвалы ў ваш api_key.txt file (напрыклад, знак парадку байтаў), вы можаце ўбачыць ERROR_ACCESS_DENIED пры спробе падключыцца да службы аўтарызацыі Login with Amazon. Калі гэта адбываецца, паспрабуйце выдаліць любыя прабелы ў пачатку або ў канцы, пераводы радкоў або падазроныя сімвалы. (Напрample, рэдактар, які выкарыстоўвае Byte Order Mark, можа дадаць 0xEF 0xBB 0xBF або іншыя шаснаццатковыя паслядоўнасці ў пачатак вашага api_key.txt file). Вы таксама можаце паспрабаваць атрымаць новы ключ API.
Апрацоўваць змены канфігурацыі для вашай дзейнасці
Калі карыстальнік змяняе арыентацыю экрана або змяняе стан клавіятуры прылады падчас ўваходу ў сістэму, гэта прапануе перазапусціць бягучую дзейнасць. Гэты перазапуск нечакана закрые экран ўваходу. Каб прадухіліць гэта, вы павінны ўсталяваць дзейнасць, якая выкарыстоўвае метад аўтарызацыі для апрацоўкі гэтых змяненняў канфігурацыі ўручную. Гэта прадухіліць перазапуск дзейнасці.
- In Пакет Правадыр, двойчы пстрыкніце xml.
- У ст Ужыванне раздзел, знайдзіце дзейнасць, якая будзе апрацоўваць Уваход праз Amazon (forexampле, Асноўная дзейнасць),
- Дадайце наступны атрыбут да дзейнасці, якую вы знайшлі на этапе 2:
android:configChanges=”клавіятура|клавіятураСхаваная|арыентацыя” Ці для API 13 або вышэй:
android:configChanges=”клавіятура|keyboardHidden|арыентацыя|памер экрана” - Ад ст File меню, націсніце Захаваць
Цяпер, калі адбываецца змена арыентацыі клавіятуры або прылады, Android будзе выклікаць метад onConfigurationChanged для вашай дзейнасці. Вам не трэба ўкараняць гэту функцыю, калі няма аспектаў гэтых змяненняў канфігурацыі, якія вы хочаце апрацаваць для свайго прыкладання.
Дадайце WorkflowActivity да вашага праекта
Калі карыстальнік націскае кнопку «Увайсці праз Amazon», API запускае a web браўзер, каб прадставіць карыстальніку старонку ўваходу і згоды. Каб гэтая дзейнасць браўзера працавала, вы павінны дадаць WorkflowActivity у свой маніфест.
Калі вы раней інтэгравалі Login with Amazon SDK або ў вас ёсць дзеянне com.amazon.identity.auth.device.authorization.AuthorizationActivity, заяўленае ў вашым AndroidManifest.xml, яго трэба выдаліць і замяніць на WorkflowActivity.
- In Пакет Правадыр, двойчы пстрыкніце AndroidMailfest.xml..
- У ст Ужыванне раздзел, дадайце наступны код.
<activity android:name=
“com.amazon.identity.auth.device.workflow.WorkflowActivity” android:theme=”@android:style/Theme.NoDisplay” android:allowTaskReparenting=”true” android:launchMode=”singleTask”>
<action android:name=”android.intent.action.VIEW” />
<data
android:host=”${applicationId}” android:scheme=”amzn” />
Заўвага: Калі вы не выкарыстоўваеце сістэму зборкі Gradle, заменіце ${applicationId} назвай вашага пакета для гэтай праграмы.
Дадайце ў сваю праграму кнопку «Увайсці з Amazon».
Увайсці праз Amazon прапануе некалькі стандартных кнопак, якія вы можаце выкарыстоўваць, каб прапанаваць карыстальнікам увайсці з вашага прыкладання. У гэтым раздзеле прыводзяцца інструкцыі па загрузцы афіцыйнага відарыса Login with Amazon і спалучэнні яго з Android ImageButton.
- Дадайце стандартную кнопку ImageButton у сваю праграму.
Для атрымання дадатковай інфармацыі аб кнопках Android і класе ImageButton гл Гузікі на developer.android.com.
- Дайце вашай кнопцы У XML-дэкларацыі кнопкі ўсталюйце атрыбут android:id у @+id/login_with_amazon. Напрыкладampль:
android:id=”@+id/login_with_amazon” - Выберыце малюнак кнопкі.
Звярніцеся да ўваходу ў Amazon Рэкамендацыі па стылі для спісу кнопак, якія можна выкарыстоўваць у вашым дадатку.
Спампаваць копію LWA_Android.zip file. Распакуйце копію жаданай кнопкі для кожнай шчыльнасці экрана, якую падтрымлівае ваша праграма (xxhdpi, xhdpi, hdpi, mdpi або tvdpi). Для атрымання дадатковай інфармацыі аб падтрымцы некалькіх шчыльнасцей экрана ў Android гл Альтэрнатыўныя макеты у тэме «Падтрымка некалькіх экранаў» на developer.android.com. - Скапіруйце адпаведны малюнак кнопкі files да вашага праекту.
Для кожнай шчыльнасці экрана, якую вы падтрымліваеце (xhdpi, hdpi, mdpi або ldpi), скапіруйце спампаваную кнопку ў res/drawable каталог для гэтай шчыльнасці экрана. - Аб'явіце выяву кнопкі.
У кнопцы XML-дэкларацыі ўсталюйце android:src атрыбут да назвы абранай вамі кнопкі. Напрыкладampль:android:src=”@drawable/btnlwa_gold_loginwithamazon.png” - Загрузіце сваю праграму і пераканайцеся, што на кнопцы зараз ёсць выява «Увайсці з Amazon».
Вы павінны пераканацца, што кнопка правільна адлюстроўваецца для кожнай падтрымліваемай шчыльнасці экрана
Выкарыстоўвайце SDK для Android API
У гэтым раздзеле вы дадасце ў свой праект код для ўваходу карыстальніка з дапамогай Login with Amazon.
Апрацуйце кнопку ўваходу і аўтарызуйце карыстальніка
У гэтым раздзеле тлумачыцца, як выклікаць API аўтарызацыі для ўваходу карыстальніка. Гэта ўключае ў сябе стварэнне onClick слухач для вашай кнопкі «Увайсці праз Amazon» у onCreate метад вашага прыкладання.
- Дадайце Login with Amazon у свой Android See Усталюйце бібліятэку Login with Amazon.
- Ініцыялізаваць Кантэкст запыту.
Вам трэба будзе заявіць а Кантэкст запыту зменнай і стварыць новы асобнік класа. Лепшае месца для ініцыялізацыі Кантэкст запыту знаходзіцца ў onCreate метад вашай дзейнасці або фрагмента Android. Напрыкладampль:прыватны RequestContext requestContext;
@Override
абаронены несапраўдны onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState); requestContext = RequestContext.create(гэта);
} - Стварыць AuthorizeListener.
AuthorizeListener апрацуе вынік аўтарызаваць выклік. Ён змяшчае тры метады: onSuccess, onError, і onCancel. Стварыце AuthorizeListener інтэрфейс у лініі з a registerListener патэлефанаваць у onCreate метад вашай дзейнасці або фрагмента Android.@Override
абаронены несапраўдны onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState); requestContext = RequestContext.create(гэта);requestContext.registerListener(новы AuthorizeListener() {
/* Аўтарызацыя прайшла паспяхова. */
@Override
public void onSuccess(AuthorizeResult result) {
/* Ваша праграма цяпер аўтарызавана для запытаных абласцей */
}
/* Падчас спробы аўтарызацыі прыкладання адбылася памылка. */
@Override
public void onError(AuthError ae) {
/* Інфармаваць карыстальніка аб памылцы */
}
/* Аўтарызацыя была адменена да завяршэння. */ @Override
public void onCancel(AuthCancellation cancellation) {
/* Скінуць карыстальніцкі інтэрфейс у стан, гатовы да ўваходу */
}
});
}Заўвага: Калі вы выкарыстоўваеце фрагмент і фіксуеце спасылкі на View аб'екты ў вашым AuthorizeListener ажыццяўленне, стварэнне AuthorizeListener у onCreateView метад замест onCreate. Гэта забяспечвае View спасылкі на аб'екты ўсталёўваюцца пры выкліку аўтарызавацьзаканчвае.
- Рэалізаваць onSuccess, onError, і onCancel для вашага AuthorizeListener.
Паколькі працэс аўтарызацыі прадстаўляе карыстальніку экран уваходу (і, магчыма, экран згоды) у web браўзэр (або a WebView), карыстальнік будзе мець магчымасць адмяніць уваход або сысці. Калі яны відавочна адмяняюць працэс ўваходу ў сістэму, onCancel выклікаецца, і вы захочаце скінуць свой карыстальніцкі інтэрфейс.
Калі карыстальнік адыходзіць ад экрана ўваходу ў браўзер або WebView, затым пераключыцца назад у вашу праграму, SDK не выявіць, што ўваход не быў завершаны. Калі вы выяўляеце дзеянні карыстальнікаў у вашым дадатку да завяршэння ўваходу ў сістэму, вы можаце меркаваць, што яны выйшлі з браўзера, і адрэагаваць адпаведным чынам. - Тэлефануйце RequestContext.onResume.
Каб прыстасавацца да жыццёвага цыкла прыкладання Android, укараніце onResume метад у вашай дзейнасці або фрагменце. Гэта запусціць усіх слухачоў, зарэгістраваных у registerListener у выпадку, калі ваша прыкладанне закрываецца аперацыйнай сістэмай да таго, як карыстальнік завершыць працэс аўтарызацыі.@Override
абароненая пустэча onResume () {
super.onResume ();
requestContext.onResume();
} - Тэлефануйце AuthorizationManager.authorize.
У ст onClick апрацоўшчык для вашай кнопкі «Увайсці праз Amazon», выклічце аўтарызацыю, каб прапанаваць карыстальніку ўвайсці і аўтарызаваць вашу праграму.
Гэты метад дазволіць карыстальніку ўвайсці і даць згоду на запытаную інфармацыю адным з наступных спосабаў:
1. Пераключаецца ў сістэмны браўзер
2. Пераключаецца на WebView у бяспечным кантэксце (калі праграма Amazon Shopping усталявана на прыладзе)
Бяспечны кантэкст для другога варыянту даступны, калі на прыладзе ўсталявана праграма Amazon Shopping. Прылады, створаныя Amazon пад кіраваннем Fire OS (напрыклад,ample Kindle Fire, Fire Phone і Fire TV) заўсёды выкарыстоўвайце гэтую опцыю, нават калі на прыладзе няма праграмы Amazon Shopping. З-за гэтага, калі карыстальнік ужо ўвайшоў у праграму Amazon Shopping, гэты API прапусціць старонку ўваходу, што прывядзе да Адзіны ўваход вопыт для карыстальніка. Глядзіце вопыт кліента ў customer-experience-android прыкладання, каб даведацца больш. Калі ваша прыкладанне аўтарызавана, яно аўтарызавана для аднаго або некалькіх набораў даных, вядомых як прыцэлы. Вобласць ахоплівае карыстальніцкія даныя, якія вы запытваеце ў Login with Amazon. Калі карыстальнік упершыню ўваходзіць у вашу праграму, яму будзе прадстаўлены спіс даных, якія вы запытваеце, і запытваецца іх адабрэнне. У цяперашні час уваход праз Amazon падтрымлівае наступныя вобласці:Назва вобласці Апісанне праfile Дае доступ да імя карыстальніка, адраса электроннай пошты і ідэнтыфікатара ўліковага запісу Amazon. праfile:Ідэнтыфікатар карыстальніка Дае доступ толькі да ідэнтыфікатара ўліковага запісу Amazon карыстальніка. паштовы_індэкс Дае доступ да паштовага індэкса карыстальніка на file для іх уліковага запісу Amazon. AuthorizationManager.authorize з'яўляецца асінхронным выклікам, таму вам не трэба блакаваць паток карыстальніцкага інтэрфейсу або ствараць уласны працоўны паток. Для аўтарызацыі выкліку перадайце an AuthorizeRequest аб'ект, які можна пабудаваць з дапамогай AuthorizeRequest.Builder:
@Override
абаронены несапраўдны onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);
/* Дэкларацыі Previous onCreate апушчаны */// Знайдзіце кнопку з ідэнтыфікатарам login_with_amazon
// і наладзіць апрацоўшчык клікаў
View loginButton = знайсціViewById(R.id.login_with_amazon); loginButton.setOnClickListener(новы View.OnClickListener() {
@Override
public void onClick(View v) { AuthorizationManager.authorize(новы AuthorizeRequest
Builder(requestContext).addScopes(ProfileScope.profile(), ProfileScope.postalCode())
.будаваць());
});
}
Fetch User Profile даныя
У гэтым раздзеле тлумачыцца, як выкарыстоўваць карыстальніцкі API для атрымання профі карыстальнікаfile даныя пасля іх аўтарызацыі. Профіfile дадзеныя, якія вы можаце атрымаць, грунтуюцца на аб'ёме, пазначаным у аўтарызаваць:withHandler: выклік.
- Тэлефануйце User.fetch.
User.fetch вяртае пра карыстальнікаfile дадзеныя вам праз Listener AuthError> ператэлефанаваць. Слухач AuthError> змяшчае два метады: onSuccess і onError (гэта не падтрымлівае onCancel таму што няма магчымасці адмяніць a User.fetch званок). onSuccess атрымлівае аб'ект User з profile дадзеныя, пакуль onError атрымлівае ан AuthError аб'ект з інфармацыяй аб памылцы. абнаўленнеProfileданыя былыample функцыі, якую ваша праграма можа рэалізаваць для адлюстравання праfile дадзеныя ў карыстальніцкім інтэрфейсе
Заўвага: User.getUserPostalCode вяртаецца, толькі калі вы запытваеце ProfileScope.postalCode() вобласць.
Праверце ўваход карыстальніка пры запуску
Калі карыстальнік уваходзіць у вашу праграму, закрывае праграму і перазапускае яе пазней, праграма па-ранейшаму мае права атрымліваць даныя. Карыстальнік не выходзіць аўтаматычна. Пры запуску вы можаце паказаць, што карыстальнік увайшоў у сістэму, калі ваша праграма ўсё яшчэ аўтарызавана. У гэтым раздзеле тлумачыцца, як выкарыстоўваць getToken каб убачыць, ці па-ранейшаму аўтарызавана праграма.
- Тэлефануйце getToken.
У ст onStart спосаб вашай дзейнасці або фрагмент, наз getToken каб убачыць, ці па-ранейшаму аўтарызавана прыкладанне. getToken здабывае неапрацаваны маркер доступу, які менеджэр аўтарызацыі выкарыстоўвае для доступу да карыстальніка праfile. Калі значэнне токена не роўна нулю, значыць, праграма па-ранейшаму аўтарызавана, і вы можаце перайсці да атрымання профі карыстальнікаfile дадзеныя. getTokenrequires тыя ж вобласці, якія вы запытвалі ў сваім выкліку для аўтарызацыі.
getToken падтрымлівае асінхронныя выклікі гэтак жа, як User.fetch, таму вам не трэба блакаваць паток карыстальніцкага інтэрфейсу або ствараць уласны працоўны паток. Тэлефанаваць getToken асінхронна перадайце аб'ект, які падтрымлівае Слухач інтэрфейс як апошні параметр. - Заявіць а Слухач AuthError>. Ваша рэалізацыя Слухач Інтэрфейс AuthError> апрацоўвае вынік getToken выклік. Listener змяшчае два метады: onSuccess і onError (гэта не падтрымлівае onCancel таму што няма магчымасці адмяніць a getToken званок).
- Рэалізаваць onSuccess і onError для вашага Слухач . onSuccess атрымлівае ан AuthorizeResult аб'ект з маркерам доступу, у той час як onError атрымлівае ан AuthError аб'ект з інфармацыяй аб памылцы.
@Override
абаронены несапраўдны onStart(){ super.onStart();
Scope[] scopes = { ProfileScope.profile(), ProfileScope.postalCode()}; AuthorizationManager.getToken(гэты, аб'ёмы, новы
Слухач () {@Override
public void onSuccess(AuthorizeResult result) { if (result.getAccessToken() != null) {
/* Карыстальнік увайшоў у сістэму */
} яшчэ {
/* Карыстальнік не ўвайшоў у сістэму */
}
}
@Override
public void onError(AuthError ae) {
/* Карыстальнік не ўвайшоў у сістэму */
}
});
}
Ачысціць дадзеныя аўтарызацыі і выйсці з сістэмы карыстальніка
У гэтым раздзеле тлумачыцца, як выкарыстоўваць метад выхаду для выхаду карыстальніка з вашай праграмы. Карыстальніку трэба будзе зноў увайсці ў сістэму, каб праграма атрымала profile дадзеныя. Выкарыстоўвайце гэты метад, каб выйсці з сістэмы карыстальніка або ліквідаваць праблемы з уваходам у праграму.
- Укараніць механізм выхаду з сістэмы.
Калі карыстальнік паспяхова ўвайшоў у сістэму, вы павінны забяспечыць механізм выхаду з сістэмы, каб ён мог ачысціць сваю профіfile даныя і раней дазволеныя вобласці. Вашым механізмам можа быць гіперспасылка, кнопка або пункт меню. Для гэтага эксample, мы створым an метад onClick за кнопку. - Тэлефануйце выйсці.
Тэлефануйце выйсці у вашым апрацоўшчыку выхаду з сістэмы, каб выдаліць дадзеныя аўтарызацыі карыстальніка (токены доступу, праfile) з мясцовай крамы. выйсці прымае кантэкст Android і слухач AuthError>да справіцца з поспехам або няўдачай. - Аб'явіць ананімнага слухача AuthError>.
Ваша рэалізацыя Listener AuthError> апрацоўвае вынік ст выйсці выклік. Ананімныя класы карысныя для захопу зменных з уключанай вобласці.
Глядзіце Апрацуйце кнопку ўваходу і аўтарызуйце карыстальніка для ан exampсмерць абвяшчае класы слухачоў. - Рэалізаваць onSuccess і onError для вашага Слухача AuthError>.
Калі signOutsucceed вам варта абнавіць свой карыстацкі інтэрфейс, каб выдаліць спасылкі на карыстальніка і забяспечыць механізм уваходу, які карыстальнікі могуць выкарыстоўваць для паўторнага ўваходу. Калі падпісвацьвыходы памылка, вы можаце дазволіць карыстальніку паспрабаваць выйсці яшчэ раз.@Override
абаронены несапраўдны onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);
/* Дэкларацыі Previous onCreate апушчаны */// Знайдзіце кнопку з ідэнтыфікатарам выхаду з сістэмы і наладзьце апрацоўшчык клікаў View logoutButton = знайсціViewById(R.id.выхад); logoutButton.setOnClickListener(новы View.OnClickListener() {@Override
public void onClick(View v) { AuthorizationManager.signOut(getApplicationContext(), новы
Слухач () { @Override
public void onSuccess(Void response) {
// Усталяваць стан выхаду з сістэмы ў карыстальніцкім інтэрфейсе
}
@Override
public void onError(AuthError authError) {
// Запіс памылкі
}});
}
});
}
Увайдзіце ў Amazon. Кіраўніцтва па пачатку працы для праграм Android – Спампаваць [аптымізавана]
Увайдзіце ў Amazon. Кіраўніцтва па пачатку працы для праграм Android – Спампаваць
Спасылкі
- Кіраўніцтва карыстальнікаmanual.tools