Prisijunkite naudodami „Amazon“ darbo pradžios vadovą, skirtą „Android“
Prisijunkite naudodami „Amazon“: „Android“ darbo pradžios vadovas
Autorių teisės © 2016 „Amazon.com, Inc.“ arba jos filialai. Visos teisės saugomos. „Amazon“ ir „Amazon“ logotipas yra „Amazon.com, Inc.“ ar jos filialų prekių ženklai. Visi kiti „Amazon“ nepriklausantys prekių ženklai yra jų atitinkamų savininkų nuosavybė.
Darbo pradžia, skirta „Android“.
Šiame vadove parodysime, kaip prie „Android“ programos pridėti prisijungimą naudojant „Amazon“. Baigę šį vadovą, savo programoje turėtumėte turėti veikiantį mygtuką Prisijungti naudojant „Amazon“, kad vartotojai galėtų prisijungti naudodami savo „Amazon“ kredencialus.
„Android“ kūrėjo įrankių diegimas
Prisijungimas naudojant „Amazon SDK“, skirtas „Android“, padės pridėti prisijungimą naudojant „Amazon“ prie „Android“ programos. Rekomenduojame naudoti prisijungimą naudojant „Amazon SDK“, skirtą „Android“, iš developer.amazon.com su „Android Studio“. Tačiau taip pat galite naudoti „Eclipse“ su ADT papildiniu. Norėdami sužinoti, kaip įdiegti „Android Studio“ ir nustatyti „Android SDK“, žr Gaukite Android SDK svetainėje developer.android.com.
Kai įdiegsite „Android SDK“, raskite SDK valdytojas „Android“ diegimo programa. Jei norite kurti prisijungimui naudojant „Amazon“, turite naudoti SDK tvarkyklę, kad įdiegtumėte SDK platformą, skirtą „Android“ 2.2 ar naujesnės versijos (8 API versija). Matyti SDK paketų pridėjimas developer.android.com, kad gautumėte daugiau informacijos apie SDK naudojimą
Įdiegę SDK, nustatykite „Android“ virtualųjį įrenginį (AVD), kad galėtumėte paleisti programas. Matyti Valdymas Virtualūs įrenginiai tinklalapyje developer.android.com rasite instrukcijas, kaip nustatyti virtualų įrenginį.
Kai jūsų kūrimo aplinka bus sukurta, galėsite Įdiekite „Android“ skirtą „Login with Amazon SDK“ or Paleiskite Sample App, kaip aprašyta toliau.
Įdiekite „Android“ skirtą „Login with Amazon SDK“
Prisijungimas naudojant „Amazon SDK“, skirtas „Android“, yra dviejų paketų. Pirmajame yra „Android“ biblioteka ir patvirtinamoji dokumentacija. Antrame yra kaipample programa, kuri leidžia vartotojui prisijungti ir rodo savo profesionalumąfile duomenis.
Jei dar neįdiegėte „Android SDK“ ar „Android“ kūrimo įrankių, žr Diegimas „Android“ kūrėjo įrankiai skyriuje aukščiau.
- Atsisiųsti užtrauktukas ir ištraukite files į standžiojo disko katalogą.
Turėtumėte pamatyti a doc ir a lib pakatalogis. - Atidaryti doc/index.html į view Prisijungimas naudojant „Amazon Android“ API
- Žr Įdiekite prisijungimą naudodami „Amazon Library“, instrukcijos, kaip pridėti biblioteką ir dokumentus prie „Android“
Kai įdiegsite „Android“ skirtą „Login with Amazon SDK“, galėsite Sukurkite naują prisijungimą naudodami „Amazon“ Projektas, po to Registracija prisijungiant prie „Amazon“ .
Paleiskite Sample App
Norėdami paleisti sample programą, importuokite sampį „AndroidStudio“ darbo sritį (jei naudojate „Eclipse“, prie darbo srities taip pat turite pridėti tinkintą derinimo raktų saugyklą. Žr. Pridėkite pasirinktinį derinimą Keystore programoje Eclipse skyrių žemiau). API raktas, kurį sample application uses reikalauja, kad darbo sritis naudotų raktų saugyklą, kuri pateikiama kartu su sample. Jei pasirinktinė raktų saugykla neįdiegta, vartotojai negalės prisijungti naudodami sample. Jei naudojate AndroidStudio, raktų saugykla bus paimta automatiškai.
- Atsisiųsti SampleLoginWithAmazonAppForAndroid-src.zip ir ištraukite files į katalogą jūsų kietajame
- Paleiskite „Android Studio“ ir pasirinkite Atidarykite esamą „Android Studio“ projektą
- Naršykite į SampleLoginWithAmazonApp katalogas, gautas ištraukus atsisiųstą ZIP failą file žingsnyje
- Iš Sukurti meniu, spustelėkite Padaryti projektąir palaukite, kol projektas bus baigtas
- Iš Bėk meniu, spustelėkite Bėk ir tada spustelėkite SampleLoginWithAmazonApp.
- Pasirinkite emuliatorių arba prijungtą „Android“ įrenginį ir spustelėkite Bėk.
Pridėkite tinkintą derinimo raktų parduotuvę „Eclipse“.
Jei naudojate „Eclipse“, vadovaukitės toliau pateiktomis instrukcijomis, kad pridėtumėte tinkintą derinimo raktų saugyklą:
- Į Parinktys dialogo langą, pasirinkite Android ir Sukurti.
- Šalia Pasirinktinis Debug Keystore, spustelėkite Naršyti.
- Eikite į sampprogramų katalogą ir pasirinkite 3p.keystore, tada spustelėkite OK.
Registracija prisijungiant prie „Amazon“
Prieš naudodami prisijungimą naudodami „Amazon“ a websvetainėje arba mobiliojoje programėlėje, turite užregistruoti programą naudodami Prisijunkite naudodami „Amazon“. Jūsų prisijungimo naudojant „Amazon“ programa yra registracija, kurioje yra pagrindinė informacija apie jūsų verslą ir informacija apie kiekvieną websukurta svetainė arba programa mobiliesiems, kuri palaiko prisijungimą naudojant „Amazon“. Ši verslo informacija rodoma vartotojams kiekvieną kartą, kai jie naudojasi „Prisijungti naudojant Amazon“. websvetainę arba programą mobiliesiems. Vartotojai matys jūsų programos pavadinimą, logotipą ir nuorodą į jūsų privatumo politiką. Šie veiksmai parodo, kaip užregistruoti prisijungimą naudojant „Amazon“ programą ir pridėti „Android“ programą prie tos paskyros.
Peržiūrėkite šias temas:
- Užregistruokite savo prisijungimą naudodami „Amazon“ programą
- Užregistruokite savo Android programą
- Pridėkite „Android App“, skirtą „Amazon Appstore“
- Pridėkite „Android“ programą be „Appstore“.
- „Android“ programų parašai ir API raktai
- „Android“ programos parašo nustatymas
- „Android“ API rakto gavimas
Užregistruokite savo prisijungimą naudodami „Amazon“ programą
- Eikite į https://login.amazon.com.
- Jei anksčiau prisiregistravote prisijungti prie „Amazon“, spustelėkite „App Console“. Kitu atveju spustelėkite Registruotis. Jūs būsite nukreiptas į „Seller Central“, kuris tvarko programos registraciją prisijungimui su. Jei pirmą kartą naudojate „Seller Central“, jūsų bus paprašyta nustatyti „Seller Central“ paskyrą.
- Spustelėkite Užregistruokite naują paraišką. The Užregistruokite savo paraišką forma pasirodys:
a. Į Užregistruokite savo paraišką formą, įveskite a Vardas ir a Aprašymas už jūsų prašymą.
The Vardas yra vardas, rodomas sutikimo ekrane, kai naudotojai sutinka bendrinti informaciją su jūsų programa. Šis pavadinimas taikomas „Android“, „iOS“ ir webjūsų programos svetainės versijos.
b. Įveskite a Privatumo pranešimas URL už jūsų prašymą
The Privatumo pranešimas URL yra jūsų įmonės ar programos privatumo politikos vieta (pvzample, http://www.example.com/privacy.html). Ši nuoroda naudotojams rodoma sutikimo ekrane.
c. Jei norite pridėti a Logotipo vaizdas savo programai spustelėkite Naršyti ir raskite tinkamą vaizdą.
Šis logotipas rodomas prisijungimo ir sutikimo ekrane, kad atspindėtų jūsų verslą arba websvetainę. Logotipas bus sumažintas iki 50 pikselių aukščio, jei jis bus aukštesnis nei 50 pikselių; logotipo plotis neribojamas - Spustelėkite Išsaugoti. Jūsų sampregistracija turėtų atrodyti taip:
Išsaugoję pagrindinius programos nustatymus, galite pridėti konkrečių nustatymų websvetaines ir programas mobiliesiems, kurios naudos šį prisijungimą naudojant „Amazon“ paskyrą.
Užregistruokite savo Android programą
Norėdami užregistruoti „Android“ programą, galite pasirinkti registruoti programą per „Amazon Appstore“ (Pridėkite „Android App“, skirtą „Amazon Appstore“, p. 8) arba tiesiogiai prisijungę naudodami „Amazon“ (Pridėkite „Android“ Programa be Appstore, p. 9). Kai jūsų programa bus užregistruota, turėsite prieigą prie API rakto, kuris suteiks jūsų programai prieigą prie prisijungimo naudojant Amazon autorizavimo paslaugos.
Pastaba: Jei „Android“ programoje planuojate naudoti „Amazon Device Messaging“, susisiekite lwa- support@amazon.com su:
- „Amazon“ paskyros, kurią naudojote prisiregistruodami prisijungti prie „Amazon“, el. pašto adresas.
- „Amazon“ paskyros, kurią naudojote prisiregistruodami prie „Amazon Appstore“, el. Pašto adresas (jei skiriasi).
- Vardas, nurodytas pardavėjo centro paskyroje. (Pardavėjo centre spustelėkite Nustatymai> Paskyros informacija> Pardavėjo informacija, ir naudokite Rodomas pavadinimas).
- Vardas, esantis jūsų „Amazon Appstore“ kūrėjo paskyroje. (Svetainėje Mobiliųjų programų platinimas spustelėkite Nustatymai > Įmonė Profile ir naudokite Kūrėjo vardas arba įmonės pavadinimas).
Pridėkite „Android App“, skirtą „Amazon Appstore“
Atlikę šiuos veiksmus prie „Login with Amazon“ paskyros pridėsite „Amazon Appstore“ programą:
- Programos ekrane spustelėkite „Android“ nustatymai. Jei jau esate užregistravę „Android“ programą, ieškokite Pridėti API raktą mygtuką „Android“ nustatymai
The Išsami „Android“ programos informacija forma pasirodys: - Pasirinkite Taip atsakant į klausimą „Ar ši programa platinama per„ Amazon Appstore “?“
- Įveskite Etiketė jūsų „Android“ programoje. Tai neturi būti oficialus programos pavadinimas. Tai tiesiog nustato šią konkrečią „Android“ programą tarp programų ir websvetainės, registruotos prisijungus prie „Amazon“ programos.
- Pridėkite savo „Amazon Appstore“ ID.
- Jei patys pasirašėte programą, pridėkite savarankiško pasirašymo informaciją. Tai leis jums gauti API raktą kūrimo metu nenaudojant „Appstore“ tiesiogiai:
a. Jei jūsų programa nepasirašoma per „Amazon Appstore“, atsakydami į klausimą „Ar ši programa yra pasirašyta savarankiškai?“ pasirinkite Taip.
The Išsami „Android“ programos informacija forma išsiplės:
b. Įveskite savo Pakuotės pavadinimas.
Tai turi atitikti jūsų „Android“ projekto paketo pavadinimą. Norėdami nustatyti „Android“ projekto paketo pavadinimą, atidarykite projektą pasirinktame „Android“ kūrėjo įrankyje.
Atidaryti „AndroidManifest.XML“ „Package Explorer“ ir pasirinkite Manifestas skirtuką. Pirmasis įrašas yra paketo pavadinimas.
c. Įveskite programą Parašas.
Tai SHA-256 maišos vertė, naudojama jūsų programai patvirtinti. Parašas turi būti sudarytas iš 32 šešioliktainių porų, atskirtų dvitaškiais (pvzampLe: 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). Žr „Android“ programų parašai ir API raktai veiksmams, kuriuos galite naudoti norėdami išgauti parašą iš savo projekto. - Spustelėkite Išsaugoti.
Jei skirtingose jūsų programos versijose yra skirtingi parašai ar paketų pavadinimai, pvz., Vienos ar daugiau bandomųjų versijų ir gamybinės versijos, kiekvienai versijai reikalingas atskiras API raktas. Nuo „Android“ nustatymai programos, spustelėkite Pridėti API raktą mygtuką, kad sukurtumėte papildomus programos raktus (po vieną kiekvienoje versijoje).
„Android“ programų parašai ir API raktai
Programos parašas yra SHA-256 maišos vertė, taikoma kiekvienai „Android“ programai, kai ji yra sukurta. „Amazon“ sukuria API raktą naudodamas programos parašą. API raktas leidžia „Amazon“ tarnyboms atpažinti jūsų programą. Jei programai pasirašyti naudojate „Amazon Appstore“, API raktas pateikiamas automatiškai. Jei nenaudojate „Amazon Appstore“, turėsite rankiniu būdu valdyti savo API raktą.
Programų parašai saugomi raktų saugykloje. Paprastai „Android“ programoms yra derinimo raktų saugykla ir išleidimo raktų saugykla. Derinimo raktų saugykla sukurta naudojant „Android“ kūrimo įrankių papildinį, skirtą „Eclipse“, ir naudojama pagal numatytuosius nustatymus. Derinimo raktų saugyklos vietą Eclipse galite rasti spustelėję Langas, tada pasirinkite Preferences > Android > Build. Šiame ekrane taip pat galite pridėti savo derinimo raktų saugyklą. „Android Studio“ iš Sukurti meniu, pasirinkite Redaguoti kūrimo tipus, tada eikite į Pasirašymas skirtuką ir raskite derinimo raktų saugyklą Parduotuvė File lauke.
Išleidimo raktų saugykla paprastai sukuriama, kai eksportuojate „Android“ programą, kad sukurtumėte pasirašytą APK file.
Vykdydami eksporto procesą, jei kuriate naują leidimo raktų saugyklą, pasirinksite jos vietą. Autorius
pagal numatytuosius nustatymus jis bus patalpintas toje pačioje vietoje kaip ir numatytoji derinimo raktų saugykla.
Jei kūrimo metu užregistravote programą naudodami derinimo parašą, turėsite prie programos pridėti naują „Android“ nustatymą, kai būsite pasirengę išleisti programą. Naujas programos nustatymas turi naudoti parašą iš leidimo raktų.
Žr Paraiškų pasirašymas daugiau informacijos rasite adresu developer.android.com.
Nustatykite „Android“ programos parašą
- Jei turite pasirašytą APK file:
a. Išpakuokite APK file ir išgauti CERT.RSA. (Jei reikia, APK plėtinį galite pervardyti į ZIP).
b. Iš komandinės eilutės vykdykite:„Keytool“ spaudos koncertas -file CERT.RSA Keytoolis esančioje šiukšliadėžė jūsų „Java“ diegimo katalogą.
- Jei turite raktų saugyklą file:
a. Iš komandinės eilutės vykdykite:keytool -list -v -alias -raktų parduotuvėfilevardas> Klavišų įrankis yra jūsų „Java“ diegimo bin kataloge. Pseudonimas yra rakto, naudojamo programai pasirašyti, pavadinimas.
b. Įveskite rakto slaptažodį ir paspauskite Įeikite. - Pagal Pažymėjimo pirštų atspaudai, nukopijuoti SHA256 vertė.
Gaukite „Android“ API raktą
Užregistravę „Android“ nustatymą ir pateikę programos parašą, galite gauti API raktą iš prisijungimo prie „Amazon“ programos registracijos puslapio. Turėsite įdėti tą API raktą į file savo „Android“ projekte. Kol to nepadarysite, programai nebus suteikta teisė bendrauti su „Login with Amazon“ autorizacijos paslauga.
- Eikite į https://login.amazon.com.
- Spustelėkite „App Console“.
- Į Programos kairėje esančiame laukelyje pasirinkite savo
- Suraskite „Android“ programą skiltyje „Android“ nustatymai (Jei dar neužregistravote „Android“ programos, žr Pridėkite „Android App“, skirtą „Amazon Appstore“).
- Spustelėkite Generuoti API rakto vertę. Iššokančiajame lange bus rodomas jūsų API raktas. Norėdami nukopijuoti raktą, spustelėkite Pasirinkite Viskas norėdami pasirinkti visą
Pastaba: API rakto reikšmė iš dalies pagrįsta jos sugeneravimo laiku. Taigi vėlesnė (-os) API rakto reikšmė (-ės), kurią sugeneruosite, gali skirtis nuo pradinės. Savo programoje galite naudoti bet kurią iš šių API raktų reikšmių, nes jos visos galioja. - Žr Pridėkite savo API raktą prie savo projekto instrukcijos, kaip pridėti API raktą prie „Android“
Prisijungimo su „Amazon“ projektu sukūrimas
Šiame skyriuje sužinosite, kaip sukurti naują „Android“ projektą prisijungiant prie „Amazon“, sukonfigūruoti projektą ir pridėti kodą prie projekto, norint prisijungti prie vartotojo su „Login with Amazon“. Aprašysime „Android Studio“ veiksmus, tačiau analogiškus veiksmus galite pritaikyti bet kuriam pasirinktam IDE ar „Android“ kūrimo įrankiui.
Peržiūrėkite šias temas:
- Sukurkite naują prisijungimą naudodami „Amazon“ projektą
- Įdiekite „Login with Amazon Library“
- Įgalinkite „Content Assist“ prisijungiant prie „Amazon Library“.
- Nustatykite tinklo leidimus savo programai
- Pridėkite savo API raktą prie savo projekto
- Pašalinkite S.ample App Custom Debug Keystore
- Tvarkykite savo veiklos konfigūracijos pakeitimus
- Pridėkite autorizavimo veiklą prie savo projekto
- Pridėkite prisijungimą naudodami „Amazon“ mygtuką prie savo programos
- Valdykite prisijungimo mygtuką ir gaukite „Pro“file Duomenys
- Patikrinkite, ar Vartotojo prisijungimas paleidžiamas
- Išvalykite įgaliojimo būseną ir atsijunkite vartotoją
- Sinchroniškai skambinkite „Amazon Authorization Manager“ metodams
Sukurkite naują prisijungimą naudodami „Amazon“ projektą
Jei dar neturite programos, skirtos „Login with Amazon“ naudoti, vadovaukitės toliau pateiktomis instrukcijomis, kad sukurtumėte. Jei turite esamą programą, pereikite prie Įdiekite „Login with Amazon Library“ .
- Paleisti Android kūrimo įrankis.
- Iš File meniu, pasirinkite Nauja ir Projektas.
- Įveskite Programos pavadinimas ir Įmonės pavadinimas už tavo
- Įveskite Paraiška ir įmonės pavadinimas atitinkantis paketo pavadinimą, kurį pasirinkote, kai užregistravote programą prisijungdami prie „Amazon“.
Jei dar neregistravote programos, pasirinkite a Paketo pavadinimas ir tada vykdykite instrukcijas Registracija prisijungiant prie „Amazon“ sukūrę projektą. Jei jūsų programos paketo pavadinimas nesutampa su registruoto paketo pavadinimu, jūsų prisijungimas naudojant „Amazon“ skambučius nepavyks. - Pasirinkite a Minimalus reikalingas SDK API 8: Android 2 (Froyo) arba naujesnė versija ir spustelėkite Kitas.
- Pasirinkite norimos sukurti veiklos tipą ir spustelėkite Kitas.
- Įveskite reikiamą informaciją ir spustelėkite Baigti.
Dabar savo darbo vietoje turėsite naują projektą, kurį galėsite naudoti norėdami paskambinti „Login with Amazon“.
Įdiekite „Login with Amazon Library“
Jei dar neatsisiuntėte „Android“ prisijungimo prie „Amazon SDK“, žr Įdiekite prisijungimą naudodami „Amazon“ SDK, skirtas „Android“ (p. 4).
- Atidarę projektą „Android“ kūrėjo įrankiuose Projekto tyrinėtojas, dešiniuoju pelės mygtuku spustelėkite savo Projektas.
- Jei aplankas vadinamas libs dar nėra, sukurkite
- Nukopijuokite prisijunkite-su-amazon-sdk.jar file iš File Sistema, tada įklijuokite jį į libs katalogą po jūsų projektu / programa.
- Dešiniuoju pelės mygtuku spustelėkite prisijunkite-su-amazon-sdk.jar, ir patikrinkite Pridėti kaip biblioteką
Įgalinkite „Content Assist“ prisijungimui naudodami „Amazon“ biblioteką „Eclipse“.
Norint įjungti „Eclipse“ turinio pagalbos palaikymą „Android“ projekte, reikia naudoti a .ypatybės file. Norėdami gauti daugiau informacijos apie turinio pagalbą, žr Turinio / kodo pagalba onhelp.eclipse.org.
Norint įjungti „Eclipse“ turinio pagalbos palaikymą „Android“ projekte, reikia naudoti a .ypatybės file. Norėdami gauti daugiau informacijos apie turinio pagalbą, žr Turinio / kodo pagalba onhelp.eclipse.org.
- In „Windows Explorer“., eikite į dok aplanką Prisijungti naudojant „Amazon SDK“, skirtą „Android“, ir nukopijuokite aplanką į
- Atidarę projektą eikite į Paketų naršyklė ir pasirinkite libs Spustelėkite Redaguoti iš pagrindinio meniu ir pasirinkite Įklijuoti. Dabar turėtumėte turėti a libs\docs katalogas.
- Pasirinkite libs Spustelėkite File iš pagrindinio meniu ir pasirinkite Nauja irFile.
- Į Nauja File dialogo langas, įveskite login-with-amazon-sdk.jar.properties ir spustelėkite Baigti.
- Užtemimas turėtų atsidaryti login-with-amazon-sdk.jar.properties teksto rengyklėje. Teksto rengyklėje pridėkite šią eilutę prie file:
doc=docs - Iš File meniu, spustelėkite Išsaugoti.
- Gali tekti iš naujo paleisti „Eclipse“, kad pakeitimai įsigaliotų
Nustatykite tinklo leidimus savo programai
Kad jūsų programa galėtų naudoti „Login with Amazon“, ji turi pasiekti internetą ir prieigą prie tinklo būsenos informacijos. Programa turi patvirtinti šiuos leidimus „Android“ apraše, jei to dar nepadarė.
PASTABA: Toliau pateikti procedūros veiksmai yra skirti pridėti leidimus „Eclipse“. Jei naudojate „Android Studio“ arba kitą IDE, galite praleisti visus toliau nurodytus sunumeruotus veiksmus. Vietoj to nukopijuokite kodo eilutes, rodomas po ekrano kopija, ir įklijuokite jas į AndroidManifest.xml file, už programų bloko ribų.
- In Paketas Tyrinėtojas, dukart spustelėkite xml.
- Ant Leidimai skirtuką, spustelėkite Pridėti.
- Pasirinkite Naudoja leidimą ir spustelėkite OK.
- Į dešinę Leidimai, suraskite Naudojimo atributai
- Į Vardas langelį, įveskite leidimas. INTERNETAS arba pasirinkite jį išskleidžiamajame meniu.
- Ant Leidimai skirtuką, spustelėkite Pridėti
- Pasirinkite Naudoja leidimą ir spustelėkite OK.
- Į Vardas langelį, įveskite leidimas.ACCESS_NETWORK_STATE arba pasirinkite jį išskleidžiamajame meniu
- Iš File meniu, spustelėkite Išsaugoti.
Dabar jūsų manifesto leidimai turėtų turėti šias vertes:
Į AndroidManifest.xml skirtuke, dabar turėtumėte matyti šiuos įrašus po manifesto elementu:
Pridėkite savo API raktą prie savo projekto
Kai užregistruojate „Android“ programą prisijungdami prie „Amazon“, jums priskiriamas API raktas. Tai yra identifikatorius, kurį naudodamas „Amazon Authorization Manager“ nustatys jūsų programą prisijungimo prie „Amazon“ autorizacijos tarnybai. Jei prisijungdami prie programos naudojate „Amazon Appstore“, „Appstore“ automatiškai pateiks API raktą. Jei nenaudojate „Amazon Appstore“, „Amazon Authorization Manager“ šią vertę vykdymo metu įkelia iš api_key.txt file esančiame turto katalogas.
- Jei dar neturite API rakto, vykdykite instrukcijas Gaukite „Android“ API raktą (p. 11).
- Atidarę ADT projektą, iš File meniu, spustelėkite Nauja ir pasirinkite Tekstas be pavadinimo File. Dabar turėtumėte turėti teksto redaktoriaus langą file pavadintas Be pavadinimo 1. Prie teksto pridėkite API raktą
- Iš File meniu, spustelėkite Išsaugoti kaip.
- Į Išsaugoti kaip dialogo lange pasirinkite turto savo projekto katalogą kaip pagrindinį aplanką. Dėl File pavadinimas, įveskite txt.
Pašalinkite S.ample App Custom Debug Keystore
PASTABA: Šis veiksmas reikalingas tik tuo atveju, jei naudojate Eclipse; jei naudojate „Android Studio“, praleiskite šį skyrių.
Jei įdiegėte prisijungimą naudojant „Amazon“, skirtą „Android sampJei programa yra toje pačioje darbo srityje, kurią naudojate savo „Android“ programai, darbo sričiai gali būti nustatyta tinkinta derinimo raktų saugykla. Kad galėtumėte naudoti savo API raktą, turite išvalyti tinkintą derinimo raktų saugyklą.
- Pagrindiniame meniu spustelėkite Langas ir pasirinkite Parinktys.
- Į Parinktys dialogo langą, pasirinkite Android ir Sukurti.
- Išvalykite Pasirinktinis derinimo raktų saugykla
- Spustelėkite OK.
Tvarkykite savo veiklos konfigūracijos pakeitimus
Jei vartotojas, prisijungdamas, pakeičia ekrano orientaciją arba keičia įrenginio klaviatūros būseną, jis paragins iš naujo paleisti dabartinę veiklą. Šis pakartotinis paleidimas netikėtai panaikins prisijungimo ekraną. Norėdami to išvengti, turėtumėte nustatyti veiklą, kuri naudoja autorizavimo metodą, kad rankiniu būdu tvarkytų tuos konfigūracijos pakeitimus. Tai neleis iš naujo pradėti veiklos.
- In Paketas Tyrinėtojas, dukart spustelėkite xml.
- Į Taikymas skyrių, suraskite veiklą, kuri tvarkys prisijungimą naudojant „Amazon“ (pvz.,ample, Pagrindinis užsiėmimas).
- Pridėkite šį atributą prie veiklos, kurią atlikote atlikdami 2 veiksmą:
android: configChanges = ”klaviatūra | klaviatūra paslėpta | orientacija” Arba API 13 ar naujesnei versijai:
android: configChanges = ”klaviatūra | klaviatūra paslėpta | orientacija | screenSize“ - Iš File meniu, spustelėkite Išsaugoti
Dabar, kai pasikeičia klaviatūros arba įrenginio orientacija, „Android“ iškvies onConfigurationChanged jūsų veiklos metodas. Jums nereikia įdiegti šios funkcijos, nebent yra šių konfigūracijos pakeitimų aspektas, kurį norite atlikti savo programoje
Kai vartotojas spustelės mygtuką Prisijungti naudojant „Amazon“, API paleis web naršyklę, kad pateiktų vartotojui prisijungimo ir sutikimo puslapį. Kad ši naršyklės veikla veiktų, prie savo aprašo turite pridėti įgaliojimo veiklą.
- In Paketas Tyrinėtojas, dukart spustelėkite xml.
- Į Taikymas skyrių, pridėkite šį kodą, pakeisdami „com.example.app“ su jūsų šios programos paketo pavadinimu:
<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“ />
<data
android:host=”com.example.app” android:scheme=”amzn” />
jūsų programa. Šiame skyriuje pateikiami veiksmai, kaip atsisiųsti oficialų prisijungimą naudojant „Amazon“ vaizdą ir susieti jį su „Android ImageButton“.
- Pridėkite standartinį „ImageButton“ prie savo programos.
Norėdami gauti daugiau informacijos apie „Android“ mygtukus ir „ImageButton“ klasę, žr Mygtukai svetainėje developer.android.com. - Suteikite mygtukui ID.
Mygtuko XML deklaracijoje atributą android:id nustatykite į @+id/login_with_amazon. Pavyzdžiui,ampLe:android: id = ”@ + id / login_with_amazon” - Pasirinkite mygtuko vaizdą.
Pasitarkite su „Amazon“ prisijungimu Stiliaus gairės mygtukų, kuriuos galite naudoti savo programoje, sąrašą. Atsisiųskite LWA_Android.zip file. Ištraukite pageidaujamo mygtuko kopiją kiekvienam ekrano tankiui, kurį palaiko jūsų programa (xxhdpi, xhdpi, hdpi, mdpi arba tvdpi). Norėdami gauti daugiau informacijos apie kelių ekrano tankių palaikymą „Android“, žr Alternatyvūs maketai temoje „Kelių ekranų palaikymas“ ondeveloper.android.com. - Nukopijuokite atitinkamo mygtuko vaizdą files jūsų projektui.
Kiekvienam palaikomam ekrano tankiui (xhdpi, hdpi, mdpi arba ldpi) nukopijuokite atsisiųstą mygtuką į res / nupiešiamas to ekrano tankio katalogas. - Paskelbkite mygtuko vaizdą.
Mygtuko XML deklaracijoje nustatykite atributą android:src į pasirinkto mygtuko pavadinimą. Pavyzdžiui,ampLe:„Android“: src = ”@ drawable / btnlwa_gold_loginwithamazon.png” 6. Įkelkite programą ir patikrinkite, ar mygtukas dabar turi prisijungimo naudojant „Amazon“ vaizdą. Turėtumėte patikrinti, ar mygtukas tinkamai rodomas kiekvienam palaikomam ekrano tankiui.
Šiame skyriuje paaiškinama, kaip paskambinti autorizacijai ir gautiProfile API, skirtos vartotojui prisijungti ir gauti jo profesionalųfile duomenis. Tai apima „onClick“ klausytojo, skirto mygtuko „Prisijungti naudojant „Amazon“, kūrimą naudojant programos „onCreate“ metodą.
- Pridėkite prisijungimą naudojant „Amazon“ prie savo „Android“ projekto. Matyti Įdiekite „Login with Amazon Library“ .
- Importuokite „Login with Amazon API“ į savo šaltinį
Norėdami importuoti prisijungimą naudojant „Amazon“ API, prie šaltinio pridėkite šiuos importavimo teiginius file:importuoti com.amazon.identity.auth.device.AuthError; importuoti
com.amazon.identity.auth.device.authorization.api.
AmazonAuthorizationManager; importuoti
com.amazon.identity.auth.device.authorization.api. AuthorizationListener; importuoti com.amazon.identity.auth.device.authorization.api.AuthzConstants; - Inicijuoti AmazonAuthorizationManager.
Reikės deklaruoti an AmazonAuthorizationManager kintamąjį ir sukurkite naują klasės egzempliorių. Norint sukurti naują egzempliorių, reikia tik esamo programos konteksto ir tuščio paketo. Geriausia vieta inicijuoti AmazonAuthorizationManager yra onCreate savo veiklos metodą. Pavyzdžiui,ampLe: - Sukurkite AuthorizeLiistener.
„AuthorizeListener“ įdiegia AuthorizatioinListener sąsają ir apdoros rezultatą autorizacinis skambutis. Jame yra trys metodai: oinSėkmės, onError, ir onCanceil. Kiekvienas metodas gauna paketą arba rinkinį AuthError objektas.privati klasė AuthorizeListener įdiegia AuthorizationListener{
/ * Įgaliojimas sėkmingai užbaigtas. * /
@ Nepaisyti
public void onSuccess (atsakymų paketas) {
}
/* Bandant įgalioti programą įvyko klaida.
*/
@ Nepaisyti
public void onError (AuthError ae) {
}
/* Autorizacija buvo atšaukta dar nepasibaigus. */
@ Nepaisyti
public void onCancel (grupės priežastis) {
}
} - Skambinti AmazonAuthorizationManager.authorize.
Į onClick mygtuko Prisijungimas naudojant „Amazon“ tvarkyklę, skambinkite autorizuoti, kad paraginti vartotoją prisijungti ir patvirtinti jūsų programą.
Šis metodas yra atsakingas už kliento įgaliojimą vienu iš šių būdų:- Perjungiama į sistemos naršyklę ir leidžia klientui prisijungti bei sutikti su prašomu
- Persijungia į web view saugiame kontekste leisti klientui prisijungti ir sutikti su prašomu
Šis saugus #2 kontekstas šiuo metu pasiekiamas kaip „Amazon Shopping“ programa „Android“ įrenginiuose. „Amazon“ sukurti įrenginiai, kuriuose veikia „Fire OS“ (pvz.,ample Kindle Fire, Fire Phone ir Fire TV) visada naudokite šią parinktį, net jei įrenginyje nėra „Amazon Shopping“ programos. Dėl šios priežasties, jei klientas jau yra prisijungęs prie „Amazon Shopping“ programos, ši API praleis prisijungimo puslapį, todėl Vienkartinis prisijungimas patirtį klientui.
Kai jūsų programa yra įgaliota, ji yra įgaliota vienam ar daugiau duomenų rinkinių, žinomų kaip apimtis. Pirmasis parametras yra apimties masyvas, apimantis vartotojo duomenis, kurių prašote iš Prisijungimo naudojant „Amazon“. Kai vartotojas pirmą kartą prisijungs prie jūsų programos, jam bus pateiktas jūsų prašomų duomenų sąrašas ir bus paprašyta patvirtinti. Prisijungimas naudojant „Amazon“ šiuo metu palaiko tris sritis: „Pro“.file, kuriame yra vartotojo vardas, el. pašto adresas ir „Amazon“ paskyros ID; profile:Vartotojo ID, kuriame yra tik „Amazon“ paskyros ID; ir Pašto kodas, kuriame yra vartotojo pašto kodas.
Geriausias būdas iškviesti autorizaciją yra asinchroninis, todėl jums nereikės blokuoti vartotojo sąsajos gijos ar kurti savo darbo gijos. Paskambinti autorizuoti sinchroniškai, praleisti objektą, kuris palaiko AuthorizationListener sąsaja kaip paskutinis parametras:privatus AmazonAuthorizationManager mAuthManager; @ Nepaisyti
protected void onCreate(Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
mAuthManager = naujas AmazonAuthorizationManager(this, Bundle.EMPTY);// Raskite mygtuką su login_with_amazon ID
// ir nustatykite paspaudimų tvarkytuvą
mLoginButton = (mygtukas) rastiViewById(R.id.login_with_amazon);
mLoginButton.setOnClickListener(new OnClickListener() {
@ Nepaisyti
public void onClick (View v) {
mAuthManager.authorize(
nauja eilutė []{“profile","Pašto kodas"},
Bundle.EMPTY, naujas AuthorizeListener());
}
});
} - Sukurti a ProfileKlausytojas.
ProfileKlausytojas yra mūsų klasės, kuri įgyvendina APIListener sąsaja ir apdoros rezultatą getProfile skambinti. APIListener yra du metodai: OnSuccess ir onError (ji nepalaiko onAtšaukti nes nėra galimybės atšaukti a getProfile skambutis). OnSuccess gauna Bundle objektą su profile duomenis, tuo tarpu onEriror gauna AuthError objektas su informacija apie klaidą.privati klasė ProfileListener įgyvendina APIListener{ /* getProfile sėkmingai baigtas. */ @Nepaisyti
public void onSuccess (atsakymų paketas) {}
/* Bandant gauti profesionalų įvyko klaidafile. */ @Nepaisyti
public void onError (AuthError ae) {
}
} - Įgyvendinti OnSuccess už tavo „AuthorizeListener“.
In sėkmės, skambinti AmazonAuthorizationManager.getProfile atgauti klientą profile. getProfile, kaip autorizuoti, naudoja asinchroninę klausytojo sąsają. Dėl getProfile, ta sąsaja yra APIListener, notAuthorizationListener.
/* Autorizacija sėkmingai baigta. */ @Nepaisyti
public void onSuccess (atsakymų paketas) {
mAuthManager.getProfile(naujas ProfileKlausytojas());} - Įgyvendinti OnSuccessfor tavo ProfileKlausytojas.
onSuccesshas dvi pagrindinės užduotys: atgauti profesionaląfile duomenis iš atsakymų rinkinio ir perduoti duomenis vartotojo sąsajai. updateProfileDatais hipotetinė funkcija, kurią jūsų programa galėtų įgyvendinti, kad būtų rodomas profesionalusfile detales. setLoggedInState, kita hipotetinė funkcija, rodytų, kad vartotojas yra prisijungęs, ir suteiktų jiems galimybę atsijungimas.
Norėdami atgauti profesionaląfile duomenų iš paketo, naudojame pavadinimus, kuriuos saugo AuthzConstants klasė. The OnSuccess pakete yra profile duomenis BUNDLE_KEY.PROFILE ryšulėlis.
Profile paketą, apimties duomenys indeksuojami PROFILE_KEY.NAME, PROFILE_KEY.EMAIL, PROFILE_KEY.USER_ID, ir PROFILE_KEY.POSTAL_CODE. PROFILE_KEY.POSTAL_CODE yra įtrauktas tik tuo atveju, jei paprašysite pašto_kodas apimtis.@ Nepaisyti
public void onSuccess (atsakymų paketas) {
// Gauti mums reikalingus duomenis iš Bundle Bundle profileBundle = response.getBundle(
AuthzConstants.BUNDLE_KEY.PROFILE.val);
Eilutės pavadinimas = profesionalasfileBundle.getString(
AuthzConstants.PROFILE_KEY.NAME.val);
El. pašto eilutė = profesionalasfileBundle.getString(
AuthzConstants.PROFILE_KEY.EMAIL.val);
Styginių sąskaita = profesionalasfileBundle.getString(
AuthzConstants.PROFILE_KEY.USER_ID.val);
Eilutė pašto kodas = profesionalasfileBundle.getString(
AuthzConstants.PROFILE_RAKTAS.PAŠTO_KODAS.val);
runOnUiThread(new Runnable() { @Override
public void run() {
updateProfileDuomenys (vardas, pavardė, el. pašto adresas, paskyra, pašto kodas);
}
});
} - Įgyvendinti onError už tavo ProfileKlausytojas.
onError apima an AuthError objektas, kuriame yra išsami informacija apie klaidą./* Bandant gauti profesionalų įvyko klaidafile. */ @Nepaisyti
public void onError (AuthError ae) {
/* Bandykite dar kartą arba informuokite vartotoją apie klaidą */
} - Įgyvendinti onErrorfor tavo „AuthorizeListener“.
/* Bandant įgalioti programą įvyko klaida.
*/
@ Nepaisyti
public void onError (AuthError ae) {
/ * Informuokite vartotoją apie klaidą * /
} - Įgyvendinti onCancelfor tavo „AuthorizeListener“.
Kadangi autorizacijos procesas pateikia prisijungimo ekraną (ir galbūt sutikimo ekraną) vartotojui web naršyklė (arba a webview), vartotojas turės galimybę atšaukti prisijungimą arba pereiti nuo web puslapį. Jei jie aiškiai atšaukia prisijungimo procesą, onAtšaukti vadinamas. Jeigu onCancelis paskambinę, norėsite iš naujo nustatyti vartotojo sąsają./* Autorizacija buvo atšaukta dar nepasibaigus. */
@ Nepaisyti
public void onCancel (grupės priežastis) {
/* iš naujo nustatykite vartotojo sąsają į parengties prisijungti būseną */
}Pastaba: Jei vartotojas naršyklėje nukrypsta nuo prisijungimo ekrano arba web view ir vėl persijungia į jūsų programą, SDK neaptiks, kad prisijungimas nebuvo baigtas. Jei aptinkate naudotojo veiklą programoje prieš prisijungiant, galite manyti, kad jie išėjo iš naršyklės ir atitinkamai reaguos.
Patikrinkite, ar Vartotojo prisijungimas paleidžiamas
Jei vartotojas prisijungia prie jūsų programos, uždaro programą ir vėliau paleidžia programą iš naujo, programa vis tiek turi teisę nuskaityti duomenis. Vartotojas neatsijungia automatiškai. Paleidžiant vartotoją galite rodyti kaip prisijungusį, jei jūsų programa vis dar įgaliota. Šiame skyriuje paaiškinama, kaip naudoti getToken, kad pamatytumėte, ar programa vis dar autorizuota.
- Sukurti a TokenListener.
TokenListener įgyvendina APIListener sąsaja ir apdoros getToken skambučio rezultatą. APIListener yra du metodai: OnSuccess ir onError (tai nepalaiko onAtšaukti nes nėra galimybės atšaukti a „getToken“ skambutis). OnSuccess gauna Bundle objektą su prieigos rakto duomenimis, o onError gauna AuthError objektas su informacija apie klaidą.privačios klasės TokenListener įgyvendina APIListener{ /* getToken sėkmingai baigtas. */ @Nepaisyti
public void onSuccess (atsakymų paketas) {
}
/* Bandant gauti prieigos raktą įvyko klaida. */ @Nepaisyti
public void onError (AuthError ae) {
}
} - Į onStart savo veiklos metodą, skambinkite „getToken“ norėdami sužinoti, ar programa vis dar yra įgaliota.
„getToken“ gauna neapdorotą prieigos raktą, kurį AmazonAuthorizationManager naudoja, kad pasiektų kliento profesionaląfile. Jei prieigos rakto reikšmė nėra nulinė, programa vis tiek yra įgaliota ir skambinama getProfile turėtų pasisekti. „getTokenrequires“ tomis pačiomis sritimis, kurių prašėte savo kvietime suteikti įgaliojimą.
„getTokensupports“ asinchroniniai skambučiai taip pat kaip getProfile, todėl jums nereikės blokuoti vartotojo sąsajos gijos ar kurti savo darbinės gijos. Norėdami iškviesti getToken asinchroniškai, perduokite objektą, kuris palaiko APIListener sąsaja kaip galutinis parametras.@ Nepaisyti
protected void onStart(){
super.onStart
();mAuthManager.getToken(new String []{“profile","Pašto kodas"},
naujas
TokenListener());
} - Įgyvendinti OnSuccess už tavo TokenListener.
onSuccesshas dvi užduotys: paimti žetoną iš Bundle ir, jei jis galioja, paskambinti getProfile.
Norėdami gauti prieigos rakto duomenis iš paketo, naudojame pavadinimus, kuriuos saugo AuthzConstants klasė. The OnSuccess pakete yra prieigos rakto duomenys BUNDLE_KEY.TOKEN reikšmėje. Jei ši reikšmė nėra nulinė, šis pvzampskambina getProfile naudojant tą patį klausytoją, kurį nurodėte ankstesniame skyriuje (žr. 7 ir 8 veiksmus)./* getToken sėkmingai baigtas. */
@ Nepaisyti
public void onSuccess (atsakymų paketas) {
galutinė eilutė authzToken =
response.getString(AuthzConstants.BUNDLE_KEY.TOKEN.val);
if (!TextUtils.isEmpty(authzToken))
{
// Atkurti profesionaląfile duomenis
mAuthManager.getProfile(naujas ProfileKlausytojas());
}
}
ClearAuthorizationState metodas išvalys vartotojo įgaliojimo duomenis iš AmazonAuthorizationManager vietinės duomenų saugyklos. Vartotojas turės prisijungti dar kartą, kad programa galėtų nuskaityti profile duomenis. Naudokite šį metodą, norėdami atsijungti nuo vartotojo arba pašalinti prisijungimo prie programos problemas.
- Įdiekite atsijungimą
Kai vartotojas sėkmingai prisijungia, turėtumėte pateikti atsijungimo mechanizmą, kad jis galėtų išvalyti savo profesionaląfile duomenis ir anksčiau patvirtintas apimtis. Jūsų mechanizmas gali būti hipersaitas arba meniu elementas. Dėl šio buvample sukursime an onClick mygtuko metodas. - Atsijungimo tvarkyklėje skambinkite ClearAuthorizationState. ClearAuthorizationState pašalins vartotojo įgaliojimo duomenis (prieigos prieigos raktus, profile) iš vietinės parduotuvės. clearAuthorizationStatetakes jokių parametrų, išskyrus an APIListener grąžinti sėkmę arba
- Paskelbti anonimu APIListener.
Anoniminės klasės yra naudinga alternatyva paskelbti naują klasę, kurią reikia įdiegti APIListener. Žr Valdykite prisijungimo mygtuką ir gaukite „Pro“file Duomenys (p. 17) už an examptegul deklaruoja klausytojų klases. - Įgyvendinti OnSuccess viduje APIListener
Kada ClearAuthorizationState jums pavyks atnaujinti vartotojo sąsają, kad būtų pašalintos nuorodos į vartotoją, ir pateikti prisijungimo mechanizmą, kurį naudotojai gali naudoti norėdami vėl prisijungti. - Įgyvendinti onError viduje APIListener.
If clearAuthorizationStatereturns klaida, galite leisti vartotojui bandyti dar kartą atsijungti.@ Nepaisyti
protected void onCreate(Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
/ * Ankstesnės onCreate deklaracijos praleistos * /
// Raskite mygtuką su atsijungimo ID ir nustatykite paspaudimų tvarkytuvą
mLogoutButton = (mygtukas) rastiViewById(R.id.logout);
mLogoutButton.setOnClickListener(new OnClickListener() {
@ Nepaisyti
public void onClick (View v) {
mAuthManager.clearAuthorizationState(new
APIListener() {
@ Nepaisyti
public void onSuccess(Rezultatų rinkinys) {
// Nustatykite atsijungimo būseną vartotojo sąsajoje
}
@ Nepaisyti
public void onError (AuthError authError) {
// Užregistruokite klaidą
}
});
}
});
}
Kai kurie AmazonAuthorizationManager metodai grąžina ateities objektą. Tai leidžia sinchroniškai iškviesti metodą, o ne perduoti klausytoją kaip parametrą. Jei naudojate ateities objektą, neturėtumėte jo naudoti vartotojo sąsajos gijoje. Jei užblokuosite vartotojo sąsajos giją ilgiau nei penkioms sekundėms, gausite ANR (programa neatsako) raginimą. Skiltyje Handle the Login Mygtukas ir Get Profile Duomenys pvzample , OnSuccess metodas „AuthorizeListener“ iškviečiamas su darbuotojo gija, kurią sukūrė AmazonAuthorizationManager. Tai reiškia, kad saugu naudoti šią giją norint iškviesti getPirofile sinchroniškai. Norėdami skambinti sinchroniškai, priskirkite grąžinimo reikšmę iš gauti Pirofile į būsimą objektą ir paskambinkite gietmetodas tame objekte palaukti, kol metodas bus baigtas.
Fuiture.get grąžina Bundle objektą, kuriame yra a FUTURE_TYPE vertė SĖKMĖ, KLAIDA, or ATŠAUKTI. Jei metodas buvo sėkmingas, tame pačiame pakete bus PROFILE_KEY vertės profesionalamsfile duomenis. Pavyzdžiui,ampLe:
/ * Įgaliojimas sėkmingai užbaigtas. * / @ Nepaisyti public void onSuccess (atsakymų paketas) { Ateitis<Bundle> ateitis = mAuthManager.getProfile(nulis); Paketo rezultatas = future.get();// Sužinokite, ar skambutis pavyko, ir gaukite profesionalųfile Objekto ateities_tipas = result.get(AuthzConstants.BUNDLE_KEY.FUTURE.val); if (ateities_type == AuthzConstants.FUTURE_TYPE.SUCCESS) { Eilutės pavadinimas = result.getString(AuthzConstants.PROFILE_KEY.NAME.val); String email = result.getString(AuthzConstants.PROFILE_KEY.EMAIL.val); String account = result.getString(AuthzConstants.PROFILE_KEY.USER_ID.val); String pašto kodas = result.getString(AuthzConstants.PROFILE_RAKTAS.PAŠTO_KODAS.val); runOnUiThread(new Runnable() { @Override public void run() { updateProfileDuomenys (vardas, pavardė, el. pašto adresas, paskyra, pašto kodas); } }); } else if (ateities_type == AuthzConstants.FUTURE_TYPE.ERROR) { // Gauti klaidos objektą AuthError authError = AuthError.extractError(result); /* Klaida diagnozuoti naudokite authError */ } |
Prisijunkite naudodami „Amazon“ darbo pradžios vadovą, skirtą „Android“ – Atsisiųsti [optimizuota]
Prisijunkite naudodami „Amazon“ darbo pradžios vadovą, skirtą „Android“ – Atsisiųsti