Kirjaudu sisään Amazonin aloitusoppaalla Androidille
Kirjaudu sisään Amazonilla: Aloitusopas Androidille
Tekijänoikeus © 2016 Amazon.com, Inc. tai sen tytäryhtiöt. Kaikki oikeudet pidätetään. Amazon ja Amazon-logo ovat Amazon.com, Inc.:n tai sen tytäryhtiöiden tavaramerkkejä. Kaikki muut tavaramerkit, joita Amazon ei omista, ovat omistajiensa omaisuutta.
Aloittaminen Androidille
Tässä oppaassa näytämme, kuinka voit lisätä Kirjaudu Amazon-sovellukseen Android-sovellukseesi. Kun olet suorittanut tämän oppaan, sovelluksessasi on oltava toimiva Kirjaudu sisään Amazon-painike, jotta käyttäjät voivat kirjautua sisään Amazon-tunnuksillaan.
Android-kehittäjätyökalujen asentaminen
Login with Amazon SDK for Android auttaa sinua lisäämään Login with Amazon -sovelluksen Android-sovellukseesi. Suosittelemme, että käytät Androidin sisäänkirjautumista Amazon SDK: lla osoitteesta developer.amazon.com ja Android Studio. Voit kuitenkin käyttää myös Eclipse with ADT -laajennusta. Katso ohjeet Android Studion asentamiseen ja Android SDK: n määrittämiseen Hanki Android SDK osoitteessa developer.android.com.
Kun Android SDK on asennettu, etsi SDK Manager sovellus Android-asennuksessasi. Jotta voit kehittää kirjautumista Amazonin kanssa, sinun on asennettava SDK Manager SDK Platform for Android 2.2: lle tai uudemmalle (API-versio 8). Katso SDK-pakettien lisääminen osoitteessa developer.android.com saadaksesi lisätietoja SDK: n käytöstä
Kun olet asentanut SDK: n, määritä Android-virtuaalilaite (AVD) sovellusten suorittamista varten. Katso Hallitseminen Virtuaaliset laitteet osoitteessa developer.android.com ohjeet virtuaalilaitteen määrittämiseen.
Kun kehitysympäristösi on määritetty, voit Asenna Login with Amazon SDK for Android or Suorita Sample App, kuten alla on kuvattu.
Asenna Login with Amazon SDK for Android
Login with Amazon SDK for Android tulee kahdessa paketissa. Ensimmäinen sisältää Android -kirjaston ja sitä tukevat asiakirjat. Toinen sisältää kutenampsovellus, jonka avulla käyttäjä voi kirjautua sisään ja näyttää ammattilaisensafile tiedot.
Jos et ole vielä asentanut Android SDK: ta tai Android-kehitystyökaluja, katso Asennus Android-kehittäjätyökalut osio yllä.
- Lataa postinumero ja pura files kiintolevyn hakemistoon.
Sinun pitäisi nähdä a doc ja a lib alihakemistosta. - Avata doc / index.html to view kirjautuminen Amazon Android -sovellusliittymän avulla
- Katso Asenna Login with Amazon Library, ohjeet kirjaston ja dokumentaation lisäämiseen Androidiin
Kun Login with Amazon SDK for Android on asennettu, voit Luo uusi kirjautuminen Amazonilla projekti, jälkeen Rekisteröityminen sisäänkirjautumiseen Amazonilla .
Suorita Sample App
Ajaa sample sovellus, tuo sampsiirry AndroidStudio -työtilaan (jos käytät Eclipseä, sinun on myös lisättävä työtilaan mukautettu virheenkorjausavain. Lisää mukautettu virheenkorjaus Avaimenvarasto Eclipse-ohjelmassa osio alla). API -avain, jonka sampSovelluskäyttö edellyttää, että työtila käyttää s: n mukana toimitettua avainvarastoaample. Jos mukautettua avainvarastoa ei ole asennettu, käyttäjät eivät voi kirjautua sisään s: n avullaample. Avainvarasto noudetaan automaattisesti, jos käytät AndroidStudioa.
- Lataa SampleLoginWithAmazonAppForAndroid-src.zip ja pura files hakemistoon kovalla
- Käynnistä Android Studio ja valitse Avaa olemassa oleva Android Studio -projekti
- Selaa SampleLoginWithAmazonApp hakemisto, joka on saatu ladatun zip -tiedoston purkamisen jälkeen file vaiheessa
- alkaen Rakentaa valikko, napsauta Tee projektija odota projektin päättymistä
- alkaen Juokse valikko, napsauta Juokse ja napsauta sitten SampleLoginWithAmazonApp.
- Valitse emulaattori tai liitetty Android-laite ja napsauta Juokse.
Lisää mukautetun virheenkorjausavaimen varasto Eclipseen
Jos käytät Eclipseä, lisää mukautettu virheenkorjausavain seuraavien ohjeiden mukaan:
- Vuonna Asetukset valintaikkuna, valitse Android ja Rakentaa.
- Vieressä Mukautettu Virheenkorjaus avaimen säilytys, napsauta Selaa.
- Siirry kohtaan sampSovellushakemisto ja valitse 3p. Avaimenkauppaja napsauta sitten OK.
Rekisteröityminen sisäänkirjautumiseen Amazonilla
Ennen kuin voit käyttää kirjautumista Amazonilla a websivustossa tai mobiilisovelluksessa, sinun on rekisteröitävä sovellus Login with Amazon -sovelluksella. Login with Amazon -sovellus on rekisteröinti, joka sisältää perustiedot yrityksestäsi ja tiedot jokaisesta webluomasi sivusto tai mobiilisovellus, joka tukee Amazonin kautta kirjautumista. Nämä yritystiedot näytetään käyttäjille aina, kun he käyttävät kirjautumista Amazonilla websivusto tai mobiilisovellus. Käyttäjät näkevät sovelluksesi nimen, logosi ja linkin tietosuojakäytäntöön. Nämä vaiheet osoittavat, kuinka rekisteröidään kirjautuminen Amazon -sovelluksella ja lisätään Android -sovellus kyseiselle tilille.
Katso seuraavat aiheet:
- Rekisteröi kirjautumistunnuksesi Amazon-sovelluksella
- Rekisteröi Android-sovelluksesi
- Lisää Android-sovellus Amazon Appstoreen
- Lisää Android-sovellus ilman Appstorea
- Android-sovellusten allekirjoitukset ja API-avaimet
- Android-sovelluksen allekirjoituksen määrittäminen
- Haetaan Android-sovellusavaimen avainta
Rekisteröi kirjautumistunnuksesi Amazon-sovelluksella
- Siirry osoitteeseen https://login.amazon.com.
- Jos olet kirjautunut sisään Amazoniin aiemmin, napsauta Sovelluskonsoli. Muussa tapauksessa napsauta Rekisteröidy. Sinut ohjataan Myyjäkeskukseen, joka hoitaa sovelluksen rekisteröinnin kirjautumista varten. Jos käytät ensimmäistä kertaa Myyjäkeskusta, sinua pyydetään perustamaan Myyjäkeskus-tili.
- Napsauta Rekisteröi uusi hakemus. The Rekisteröi hakemuksesi lomake tulee näkyviin:
a. Vuonna Rekisteröi hakemuksesi kirjoita a Nimi ja a Kuvaus hakemuksellesi.
The Nimi on nimi, joka näkyy suostumusnäytössä, kun käyttäjät suostuvat jakamaan tietoja sovelluksesi kanssa. Tämä nimi koskee Androidia, iOS:ää ja websovelluksesi sivustoversiot.
b. Syötä a Tietosuojailmoitus URL sovelluksellesi
The Tietosuojailmoitus URL on yrityksesi tai sovelluksesi tietosuojakäytännön sijainti (esimample, http://www.example.com/privacy.html). Tämä linkki näytetään käyttäjille suostumusnäytöllä.
c. Jos haluat lisätä a Logon kuva Napsauta hakemuksesi kohdalla Selaa ja etsi sopiva kuva.
Tämä logo näkyy kirjautumis- ja suostumusnäytössä edustamaan yritystäsi tai websivusto. Logo pienennetään 50 pikseliin, jos se on yli 50 pikseliä; logon leveyttä ei ole rajoitettu - Napsauta Tallentaa. Sinun samprekisteröinnin pitäisi näyttää tältä:
Kun sovelluksesi perusasetukset on tallennettu, voit lisätä tiettyjä asetuksia websivustot ja mobiilisovellukset, jotka käyttävät tätä kirjautumista Amazon -tilillä.
Rekisteröi Android-sovelluksesi
Jos haluat rekisteröidä Android-sovelluksen, voit valita, rekisteröitkö sovelluksen Amazon Appstoren kautta (Lisää Android-sovellus Amazon Appstoreen, s. 8) tai suoraan Login with Amazon (Lisää Android Sovellus ilman Appstorea, s. 9). Kun sovelluksesi on rekisteröity, sinulla on pääsy API-avaimeen, joka antaa sovelluksellesi pääsyn Login with Amazon -valtuutuspalveluun.
Huom: Jos aiot käyttää Amazon Device Messagingia Android-sovelluksessasi, ota yhteyttä lwa- support@amazon.com kanssa:
- Amazon-tilin sähköpostiosoite, jota käytit kirjautumalla sisään Amazon-palveluun.
- Amazon-tilin sähköpostiosoite, jota käytit rekisteröityessäsi Amazon Appstoreen (jos eri).
- Myyjä Central -tilisi nimi. (Napsauta Seller Centralissa Asetukset> Tilin tiedot> Myyjän tiedot, ja käytä Näyttönimi).
- Amazon Appstore -kehittäjätilisi nimi. (Napsauta Mobile App Distribution -sivustossa Asetukset > Yritys Profile ja käytä Kehittäjän nimi tai yrityksen nimi).
Lisää Android-sovellus Amazon Appstoreen
Seuraavat vaiheet lisäävät Amazon Appstore -sovelluksen Login with Amazon -tiliisi:
- Napsauta Sovellusnäytössä Android-asetukset. Jos sinulla on jo rekisteröity Android-sovellus, etsi Lisää API-avain -painiketta Android-asetukset
The Android-sovelluksen tiedot lomake tulee näkyviin: - Valitse Kyllä vastauksena kysymykseen "Jaetaanko tätä sovellusta Amazon Appstoren kautta?"
- Syötä Label Android -sovelluksestasi. Tämän ei tarvitse olla sovelluksesi virallinen nimi. Se yksinkertaisesti tunnistaa tämän Android -sovelluksen sovellusten ja websivustot, jotka on rekisteröity sisäänkirjautumalla Amazon -sovellukseen.
- Lisää omasi Amazon Appstore -tunnus.
- Jos olet itse allekirjoittanut sovelluksesi, lisää itse allekirjoittavia tietoja. Tämän avulla voit hankkia API-avaimen kehityksen aikana käyttämättä suoraan Appstore-palvelua:
a. Jos sovellustasi ei allekirjoiteta Amazon Appstoren kautta, valitse Kyllä vastauksena kysymykseen "Onko tämä sovellus itse allekirjoittanut?"
The Android-sovelluksen tiedot lomake laajenee:
b. Syötä omasi Paketin nimi.
Tämän on vastattava Android-projektisi paketin nimeä. Voit määrittää Android-projektisi paketin nimen avaamalla projektin valitsemallasi Android-kehittäjätyökalulla.
Avata AndroidManifest.XML paketinhallinnassa ja valitse Selvä välilehti. Ensimmäinen merkintä on Paketin nimi.
c. Anna sovellus Allekirjoitus.
Tämä on SHA-256-tiivistearvo, jota käytetään sovelluksesi vahvistamiseen. Allekirjoituksen on oltava 32 heksadesimaaliparia, jotka on erotettu kaksoispisteillä (esimampseuraavat: 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). Katso Android-sovellusten allekirjoitukset ja API-avaimet vaiheet, joita voit käyttää allekirjoituksen purkamiseen projektistasi. - Napsauta Tallentaa.
Jos sovelluksesi eri versioilla on erilaiset allekirjoitukset tai pakettien nimet, kuten yhdelle tai useammalle testausversiolle ja tuotantoversiolle, kukin versio vaatii oman API-avaimen. Alkaen Android-asetukset napsauta sovelluksen Lisää API-avain -painiketta luodaksesi lisäavaimia sovelluksellesi (yksi kutakin versiota kohti).
Android-sovellusten allekirjoitukset ja API-avaimet
Sovelluksen allekirjoitus on SHA-256-hash-arvo, jota sovelletaan kaikkiin Android-sovelluksiin, kun se on rakennettu. Amazon käyttää sovelluksen allekirjoitusta API-avaimen rakentamiseen. API-avaimen avulla Amazon-palvelut tunnistavat sovelluksesi. Jos allekirjoitat sovelluksesi Amazon Appstorella, API-avain toimitetaan automaattisesti. Jos et käytä Amazon Appstorea, sinun on hallittava API-avainta manuaalisesti.
Sovellusten allekirjoitukset tallennetaan avainkeskukseen. Yleensä Android-sovelluksille on virheenkorjausavain ja julkaisuavainvarasto. Virheenkorjausavaimen luo Eclipse-sovelluksen Android Development Tools -laajennus ja sitä käytetään oletusarvoisesti. Löydät virheenkorjausavaimen sijainnin Eclipsestä napsauttamalla Ikkunaja valitse sitten Asetukset> Android> Koontiversio. Sieltä voit lisätä myös oman virheenkorjausavaimen. Android Studio: alkaen Rakentaa valikosta, valitse Muokkaa koontityyppejä, mene sitten kohtaan Allekirjoitus -välilehdellä ja etsi virheenkorjausavain Store File ala.
Julkaisuavainvarasto luodaan yleensä, kun viet Android -sovelluksesi allekirjoitetun APK: n luomiseksi file.
Jos olet luomassa uutta julkaisuavainvarastoa, valitset sen sijainnin vientiprosessin kautta. Tekijä
oletusarvoisesti se sijoitetaan samaan sijaintiin kuin oletustekijän KeyStore.
Jos olet rekisteröinyt sovelluksesi debug-allekirjoituksella kehityksen aikana, sinun on lisättävä uusi Android-asetus sovellukseesi, kun olet valmis julkaisemaan sovelluksen. Uuden sovellusasetuksen on käytettävä julkaisun avaimen tallennuksen allekirjoitusta.
Katso Hakemusten allekirjoittaminen osoitteessa developer.android.com saadaksesi lisätietoja.
Määritä Android-sovelluksen allekirjoitus
- Jos sinulla on allekirjoitettu APK file:
a. Pura APK file ja ote CERT.RSA. (Voit tarvittaessa nimetä APK-laajennuksen uudestaan ZIP-muotoon).
b. Suorita komentoriviltä:keytool -printti -file CERT.RSA Keytoolis sijaitsee roskakori Java-asennuksesi hakemisto.
- Jos sinulla on avainvarasto file:
a. Suorita komentoriviltä:keytool -list -v -alias -avainkauppafilenimi> Näppäintyökalu sijaitsee Java-asennuksesi roskakorihakemistossa. Alias on avaimen nimi, jota käytetään sovelluksen allekirjoittamiseen.
b. Syötä avaimen salasana ja paina Enter. - Under Todistuksen sormenjäljet, kopioida SHA256 arvo.
Hae Android-sovellusliittymäavain
Kun olet rekisteröinyt Android -asetuksen ja antanut sovelluksen allekirjoituksen, voit noutaa sovellusliittymäavaimen kirjautumissivullesi Amazon -sovelluksen rekisteröintisivulta. Sinun on sijoitettava kyseinen API -avain kohtaan file Android -projektissasi. Ennen kuin teet niin, sovelluksella ei ole lupaa kommunikoida Login with Amazon -valtuutuspalvelun kanssa.
- Siirry osoitteeseen https://login.amazon.com.
- Napsauta Sovelluskonsoli.
- Vuonna Sovellukset vasemmalla olevasta ruudusta valitse
- Etsi Android-sovelluksesi Android-asetukset (Jos et ole vielä rekisteröinyt Android-sovellusta, katso Lisää Android-sovellus Amazon Appstoreen).
- Napsauta Luo API-avainarvo. Ponnahdusikkunassa näkyy API-avain. Kopioi avain napsauttamalla Valitse Kaikki valitaksesi koko
Huom: API-avainarvo perustuu osittain sen luomiseen. Siten seuraavat luomasi API-avainarvot voivat poiketa alkuperäisestä. Voit käyttää mitä tahansa näistä API-avainarvoista sovelluksessasi, koska ne kaikki ovat kelvollisia. - Katso Lisää API-avain projektiisi ohjeet API-avaimen lisäämisestä Android-laitteeseesi
Kirjautumisen luominen Amazon-projektilla
Tässä osiossa opit luomaan uuden Android-projektin Login with Amazon -sovellukselle, konfiguroimaan projektin ja lisäämällä koodin projektiin kirjautumaan sisään kirjautumalla sisään Amazonin kanssa. Kuvailemme Android Studion vaiheita, mutta voit soveltaa vastaavia vaiheita mihin tahansa valitsemaasi IDE- tai Android-kehitystyökaluun.
Katso seuraavat aiheet:
- Luo uusi kirjautuminen Amazon-projektilla
- Asenna Kirjaudu sisään Amazon-kirjastoon
- Ota Sisältöapu käyttöön kirjastossa Amazon-kirjastolla
- Määritä sovelluksen verkkoluvat
- Lisää API-avain projektiisi
- Poista Sample App Custom Debug Keystore
- Käsittele aktiviteettisi määritysmuutoksia
- Lisää valtuutustoiminta projektiisi
- Lisää App-kirjautumistunnus Amazon-painikkeella
- Käsittele kirjautumispainiketta ja hanki Profile Data
- Tarkista käyttäjätunnus käynnistyksen yhteydessä
- Tyhjennä valtuutustila ja kirjaudu ulos käyttäjästä
- Soita Amazon Authorization Manager -menetelmiin synkronisesti
Luo uusi kirjautuminen Amazon-projektilla
Jos sinulla ei vielä ole sovellusprojektia Kirjaudu sisään Amazonin kanssa, luo se noudattamalla alla olevia ohjeita. Jos sinulla on jo olemassa oleva sovellus, siirry kohtaan Asenna Kirjaudu sisään Amazon-kirjastoon .
- Käynnistää Android-kehitystyökalu.
- alkaen File valikosta, valitse Uusi ja Projekti.
- Anna an Sovelluksen nimi ja Yrityksen nimi sinun puolestasi
- Syötä Sovellus ja yrityksen nimi vastaa paketin nimeä, jonka valitsit, kun rekisteröit sovelluksesi Kirjaudu sisään Amazon-palveluun.
Jos et ole vielä rekisteröinyt sovellustasi, valitse a Paketin nimi ja noudata sitten Rekisteröityminen sisäänkirjautumiseen Amazonilla -osio projektin luomisen jälkeen. Jos sovelluksesi paketin nimi ei vastaa rekisteröityä paketin nimeä, kirjautuminen Amazon-puheluihin ei onnistu. - Valitse a Vaadittu vähimmäis SDK API 8: sta: Android 2 (Froyo) tai uudempi ja napsauta Seuraavaksi.
- Valitse luotavan toiminnan tyyppi ja napsauta Seuraavaksi.
- Täytä tarvittavat tiedot ja napsauta Valmis.
Työtilassasi on nyt uusi projekti, jonka avulla voit soittaa Login with Amazon.
Asenna Kirjaudu sisään Amazon-kirjastoon
Jos et ole vielä ladannut Kirjaudu sisään Amazon SDK for Android -sovelluksella, katso Asenna Kirjaudu sisään Amazon SDK Androidille (s. 4).
- Kun projekti on avattu Android Developer Tools -työkalussa, vuonna Project Explorer, Napsauta hiiren kakkospainikkeella Projekti.
- Jos kansio nimeltä libs ei ole jo läsnä, luo
- Kopioi login-with-amazon-sdk.jar file alkaen File Järjestelmäja liitä se sitten libs hakemisto projektisi / sovelluksesi alla.
- Napsauta hiiren kakkospainikkeella login-with-amazon-sdk.jar, ja tarkista Lisää kirjastona
Ota Sisältöapu käyttöön kirjastoon Amazon-kirjastolla Eclipse-sovelluksessa
Eclipse-sisältötuen ottaminen käyttöön Android-projektissa edellyttää a .ominaisuudet file. Lisätietoja sisältöavusta on kohdassa Sisältö / koodi-apu onhelp.eclipse.org.
Eclipse-sisältötuen ottaminen käyttöön Android-projektissa edellyttää a .ominaisuudet file. Lisätietoja sisältöavusta on kohdassa Sisältö / koodi-apu onhelp.eclipse.org.
- In Windowsin Resurssienhallinta, siirry kohtaan asiakirjoja kansio sisäänkirjautumista varten Amazon SDK for Android -sovelluksella ja kopioi kansio
- Kun projekti on auki, siirry kohtaan Package Explorer ja valitse libs Napsauta Muokata päävalikosta ja valitse Liitä. Sinulla pitäisi nyt olla libs \ docs hakemistosta.
- Valitse libs Napsauta File päävalikosta ja valitse Uusi jaFile.
- Vuonna Uusi File valintaikkuna, syötä sisäänkirjautuminen-amazon-sdk.jar.ominaisuuksien kanssa ja napsauta Valmis.
- Pimennyksen pitäisi avautua sisäänkirjautuminen-amazon-sdk.jar.ominaisuuksien kanssa tekstieditorissa. Lisää tekstieditorissa seuraava rivi file:
doc = asiakirjat - alkaen File valikko, napsauta Tallentaa.
- Sinun on ehkä käynnistettävä Eclipse uudelleen, jotta muutokset astuvat voimaan
Määritä sovelluksen verkkoluvat
Jotta sovelluksesi voi käyttää Login with Amazon -sovellusta, sen on käytettävä Internetiä ja verkon tilaa koskevia tietoja. Sovelluksesi on vahvistettava nämä oikeudet Android-luettelossa, jos se ei vielä ole.
HUOM: Seuraavat menettelyvaiheet koskevat erityisesti käyttöoikeuksien lisäämistä Eclipse-ohjelmassa. Jos käytät Android Studiota tai eri IDE: tä, voit ohittaa kaikki alla olevat numeroidut vaiheet. Kopioi sen sijaan kuvakaappauksen alla näkyvät koodirivit ja liitä ne AndroidManifest.xml file, sovelluslohkon ulkopuolella.
- In Paketti Tutkimusmatkailija, kaksoisnapsauta xml.
- Käytössä Käyttöoikeudet välilehti, napsauta Lisätä.
- Valitse Käyttää lupaa ja napsauta OK.
- Oikealle Käyttöoikeudet, löydä Käyttöoikeuksien määritteet
- Vuonna Nimi -ruutuun, kirjoita lupa. INTERNET tai valitse se avattavasta valikosta.
- Käytössä Käyttöoikeudet välilehti, napsauta Lisätä
- Valitse Käyttää lupaa ja napsauta OK.
- Vuonna Nimi -ruutuun, kirjoita lupa.ACCESS_NETWORK_STATE tai valitse se avattavasta valikosta
- alkaen File valikko, napsauta Tallentaa.
Luettelon käyttöoikeuksilla pitäisi nyt olla seuraavat arvot:
Vuonna AndroidManifest.xml välilehdessä, sinun pitäisi nyt nähdä nämä merkinnät luetteloelementin alla:
Lisää API-avain projektiisi
Kun rekisteröit Android-sovelluksesi Login with Amazon -sovelluksessa, sinulle määritetään API-avain. Tämä on tunniste, jota Amazon Authorization Manager käyttää tunnistamaan sovelluksesi Login with Amazon -valtuutuspalveluun. Jos käytät Amazon Appstorea sovelluksen allekirjoittamiseen, Appstore toimittaa API-avaimen automaattisesti. Jos et käytä Amazon Appstorea, Amazon Authorization Manager lataa tämän arvon ajon aikana api_key.txt file in omaisuutta hakemistosta.
- Jos sinulla ei vielä ole API-avainta, noudata ohjeita Hae Android-sovellusliittymäavain (s. 11).
- Kun ADT-projekti on auki, alkaen File valikko, napsauta Uusi ja valitse Nimetön teksti File. Sinulla pitäisi nyt olla tekstin muokkausikkuna file nimetty Nimetön 1. Lisää API-avain tekstiin
- alkaen File valikko, napsauta Tallenna nimellä.
- Vuonna Tallenna nimellä valintaikkunassa omaisuutta projektisi hakemisto pääkansioksi. Sillä File nimi, syötä txt.
Poista Sample App Custom Debug Keystore
HUOM: Tämä vaihe vaaditaan vain, jos käytät Eclipse; Jos käytät Android Studiota, ohita tämä osa.
Jos olet asentanut Login with Amazon for Android s -käyttöjärjestelmänampJos sovellus siirtyy samaan työtilaan, jota käytät Android -sovelluksessasi, sinulla voi olla mukautettu debug -avainsäilö työtilaa varten. Sinun on tyhjennettävä mukautettu debug -avainsäilö, jotta voit käyttää omaa API -avaintasi.
- Napsauta päävalikosta Ikkuna ja valitse Asetukset.
- Vuonna Asetukset valintaikkuna, valitse Android ja Rakentaa.
- Tyhjennä Mukautettu virheenkorjausavain
- Napsauta OK.
Käsittele aktiviteettisi määritysmuutoksia
Jos käyttäjä muuttaa näytön suuntaa tai muuttaa laitteen näppäimistön tilaa sisäänkirjautumisen yhteydessä, se kehottaa käynnistämään nykyisen toiminnan uudelleen. Uudelleenkäynnistys sulkee kirjautumisnäytön yllättäen. Tämän estämiseksi sinun on määritettävä toiminto, joka käyttää autorisointimenetelmää käsittelemään näitä kokoonpanomuutoksia manuaalisesti. Tämä estää toiminnan uudelleenkäynnistyksen.
- In Paketti Tutkimusmatkailija, kaksoisnapsauta xml.
- Vuonna Sovellus osiosta, etsi toiminta, joka käsittelee kirjautumista Amazonin kanssa (esimample, Pääaktiviteetti).
- Lisää seuraava määrite aktiviteettiin, jonka olet löytänyt vaiheessa 2:
android: configChanges = ”näppäimistö | näppäimistöPiilotettu | suunta” Tai API 13: lle tai uudemmalle:
android: configChanges = ”näppäimistö | keyboardHidden | suunta | screenSize" - alkaen File valikko, napsauta Tallentaa
Nyt kun näppäimistön tai laitteen suunta muuttuu, Android soittaa onConfigurationChanged menetelmä aktiviteettisi kannalta. Tätä toimintoa ei tarvitse ottaa käyttöön, ellei näissä kokoonpanomuutoksissa ole näkökohtaa, jonka haluat käsitellä sovelluksellesi
Kun käyttäjä napsauttaa Kirjaudu Amazonilla -painiketta, sovellusliittymä käynnistää web kirjautumis- ja suostumussivun näyttämiseksi käyttäjälle. Jotta tämä selaintoiminto toimisi, sinun on lisättävä AuthorizationActivity luetteloon.
- In Paketti Tutkimusmatkailija, kaksoisnapsauta xml.
- Vuonna Sovellus -osioon, lisää seuraava koodi korvaamalla “com.example.app ”ja paketin nimi tälle sovellukselle:
<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: isäntä = ”com.example.app ”android: schema =” amzn ” />
sovelluksesi. Tässä osassa on ohjeet virallisen sisäänkirjautumisen Amazon-kuvalle lataamiseen ja pariliitoksen muodostamiseksi Android ImageButtonin kanssa.
- Lisää tavallinen ImageButton sovellukseesi.
Katso lisätietoja Android-painikkeista ja ImageButton-luokasta Painikkeet osoitteessa developer.android.com. - Anna painikkeellesi tunnus.
Määritä painikkeen XML -ilmoitus android: id -määritteeksi @+id/login_with_amazon. Esimampseuraavat:android: id = ”@ + id / login_waz_amazonilla” - Valitse painikekuva.
Ota yhteyttä Amazon-kirjautumiseen Tyyliohjeet luettelo painikkeista, joita voit käyttää sovelluksessasi. Lataa kopio LWA_Android.zip file. Pura kopio haluamastasi painikkeesta kullekin näytön tiheydelle, jota sovelluksesi tukee (xxhdpi, xhdpi, hdpi, mdpi tai tvdpi). Lisätietoja useiden näyttötiheyksien tukemisesta Androidissa on kohdassa Vaihtoehtoiset asettelut Useiden näyttöjen tukeminen -aiheessa ondeveloper.android.com. - Kopioi sopiva painikekuva files projektiisi.
Kopioi ladattu painike jokaiselle tukemallesi tiheydelle (xhdpi, hdpi, mdpi tai ldpi) res / vedettävä hakemiston tälle tiheydelle. - Ilmoita painikkeen kuva.
Aseta painikkeen XML -ilmoituksessa android: src -määritteeksi valitsemasi painikkeen nimi. Esimampseuraavat:android: src = ”@ drawable / btnlwa_gold_loginwithamazon.png” 6. Lataa sovellus ja tarkista, että painikkeessa on nyt Kirjaudu Amazon-kuvalla. Varmista, että painike näkyy oikein jokaisella tuetulla näytön tiheydellä.
Tässä osassa selitetään, kuinka soittaa valtuutukseen ja getProonfile Sovellusliittymät, joilla kirjaudutaan käyttäjään ja haetaan heidän ammattilaisensafile tiedot. Tämä sisältää onClick -kuuntelijan luomisen sisäänkirjautumiseen Amazon -painikkeella sovelluksesi onCreate -menetelmässä.
- Lisää Kirjaudu Amazon-palveluun Android-projektiisi. Katso Asenna Kirjaudu sisään Amazon-kirjastoon .
- Tuo sisäänkirjautuminen Amazon-sovellusliittymällä lähteeseesi
Jos haluat tuoda kirjautumisen Amazon -sovellusliittymällä, lisää seuraavat tuontilausunnot lähteeseesi file:tuo com.amazon.identity.auth.device.AuthError; tuonti
com.amazon.identity.auth.device.authorization.api.
AmazonAuthorizationManager; tuonti
com.amazon.identity.auth.device.authorization.api. AuthorizationListener; tuoda com.amazon.identity.auth.device.authorization.api.AuthzConstants; - Alustaa AmazonAuthorizationManager.
Sinun on ilmoitettava AmazonAuthorizationManager muuttuja ja luo uusi esiintymä luokassa. Uuden ilmentymän luominen vaatii vain nykyisen sovelluskontekstisi ja tyhjän nipun. Paras paikka alustamiseen AmazonAuthorizationManager on sisällä onCreate toimintatapasi. Esimampseuraavat: - Luo AuthorizeLiistener.
AuthorizeListener toteuttaa AuthorizatioinListener-käyttöliittymän ja käsittelee valtuutuspuhelu. Se sisältää kolme menetelmää: oinSuccess, on Error, ja onCanceil. Kukin menetelmä saa joko nipun tai an Todennusvirhe esine.yksityinen luokka AuthorizeListener toteuttaa AuthorizationListener {
/ * Valtuutus valmistui onnistuneesti. * /
@Ohittaa
public void onSuccess (paketin vastaus) {
}
/ * Sovelluksen valtuutusyrityksessä tapahtui virhe.
*/
@Ohittaa
public void onError (AuthError ae) {
}
/ * Valtuutus peruutettiin, ennen kuin se saatettiin valmistua. * /
@Ohittaa
public void onCancel (Bundle-aihe) {
}
} - Soittaa AmazonAuthorizationManager.authorize.
Vuonna onClick Kirjaudu sisään Amazon-painikkeella -käyttäjä, soita valtuuta ja kehota käyttäjää kirjautumaan sisään ja valtuuttamaan sovelluksesi.
Tämä menetelmä on vastuussa valtuuttamisesta asiakkaalle jollakin seuraavista tavoista:- Siirtyy järjestelmän selaimeen ja antaa asiakkaan kirjautua sisään ja suostua pyydettyyn
- Vaihtaa kohtaan web view turvallisessa ympäristössä, jotta asiakas voi kirjautua sisään ja hyväksyä pyydetyn
Tämä suojattu asiayhteys #2 on tällä hetkellä saatavana Amazon Shopping -sovelluksena Android -laitteissa. Amazonin luomat laitteet, joissa on Fire OS (esimample Kindle Fire, Fire Phone ja Fire TV) käytä aina tätä vaihtoehtoa, vaikka laitteessa ei olisi Amazon Shopping -sovellusta. Tästä syystä, jos asiakas on jo kirjautunut sisään Amazon Shopping -sovellukseen, tämä sovellusliittymä ohittaa kirjautumissivun ja johtaa Kertakirjautuminen kokemus asiakkaalle.
Kun sovelluksesi on valtuutettu, se valtuutetaan yhdelle tai useammalle tietojoukolle, jotka tunnetaan nimellä laajuuksia. Ensimmäinen parametri on joukko laajuuksia, jotka kattavat käyttäjätiedot, joita pyydät kirjautumisesta Amazonin kanssa. Kun käyttäjä kirjautuu ensimmäisen kerran sovellukseesi, hänelle näytetään luettelo tiedoista, joita pyydät, ja heiltä pyydetään hyväksyntää. Kirjautuminen Amazonilla tukee tällä hetkellä kolmea alaa: profile, joka sisältää käyttäjän nimen, sähköpostiosoitteen ja Amazon -tilin tunnuksen; profile:käyttäjätunnus, joka sisältää vain Amazon-tilin tunnuksen; ja postinumero, joka sisältää käyttäjän postinumero / postinumeron.
Paras tapa kutsua valtuutusta on asynkronisesti, joten sinun ei tarvitse estää käyttöliittymäketjua tai luoda omaa työläisketjua. Soittaa autorisoituu synkronisesti, välittää objekti, joka tukee AuthorizationListener -käyttöliittymä viimeisenä parametrina:yksityinen AmazonAuthorizationManager mAuthManager; @Ohittaa
protected void onCreate(Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
mAuthManager = uusi AmazonAuthorizationManager (tämä, Bundle.EMPTY);// Etsi painike, jolla on login_with_amazon-tunnuksella
// ja määritä napsautusten käsittelijä
mLoginButton = (Button) etsiViewById (R.id.login_with_amazon);
mLoginButton.setOnClickListener (uusi OnClickListener () {
@Ohittaa
public void onClick (View v) {
mAuthManager.authorize (
uusi merkkijono [] {“profile","postinumero"},
Bundle.EMPTY, uusi AuthorizeListener ());
}
});
} - Luo a ProfileKuuntelija.
ProfileKuuntelija on nimemme luokalle, joka toteuttaa APIListener käyttöliittymä ja käsittelee getProfile soittaa. APIListener sisältää kaksi menetelmää: OnSuccessissa ja onError (se ei tue onCancel koska ei ole mitään tapaa peruuttaa a getProfile puhelu). OnSuccessissa vastaanottaa Bundle -objektin pro: n kanssafile tietoja, kun taas onEriror saa Todennusvirhe esine virheen kanssa.yksityinen luokka ProfileKuuntelija toteuttaa APIListener { /* getProfile suoritettu onnistuneesti. */ @Override
public void onSuccess (paketin vastaus) {}
/* Ammattilaisen hankinnassa tapahtui virhefile. */ @Override
public void onError (AuthError ae) {
}
} - Toteuta OnSuccessissa sinun puolestasi AuthorizeListener.
In OnSuccess, soittaa AmazonAuthorizationManager.getProfile hakea asiakasprofifile. getProfile, kuten valtuuttaa, käyttää asynkronista kuuntelijarajapintaa. Sillä getProfile, että käyttöliittymä on APIListener, notAutorizationListener.
/ * Valtuutus valmistui onnistuneesti. * / @Override
public void onSuccess (paketin vastaus) {
mAuthManager.getProfile(uusi ProfileKuuntelija ());} - Toteuta OnSuccessfor sinun ProfileKuuntelija.
OnSuccesshas kaksi päätehtävää: hakea ammattilainenfile vastauspaketin tiedot ja välittää tiedot käyttöliittymään. updateProfileDatais hypoteettinen toiminto, jonka sovelluksesi voisi toteuttaa näyttääkseen ammattilaisenfile yksityiskohdat. setLoggedInState, toinen hypoteettinen toiminto, osoittaisi, että käyttäjä on kirjautunut sisään, ja antaisi hänelle keinot kirjautua ulos.
Ammattilaisen hakeminenfile nipun tietoja, käytämme AuthzConstants luokassa. OnSuccessissa paketti sisältää ammattilaisenfile tiedot BUNDLE_KEY.PRO -tiedostossaFILE nippu.
Ammattilaisen sisälläfile nippu, laajuustiedot indeksoidaan PROFILE_KEY.NAME, PROFILE_KEY.EMAIL, PROFILE_KEY.USER_ID, ja PROFILE_AVAIN.POSTIKOODI. PROFILE_AVAIN.POSTIKOODI sisältyy vain, jos pyydät postinumero laajuus.@Ohittaa
public void onSuccess (paketin vastaus) {
// Hae tarvitsemamme tiedot Bundle Bundle pro -ohjelmastafileNippu = response.getBundle (
AuthzConstants.BUNDLE_KEY.PROFILE.val);
Merkkijonon nimi = profileBundle.getString (
AuthzConstants.PROFILE_AVAIN.NAME.val);
Jono -sähköposti = ammattilainenfileBundle.getString (
AuthzConstants.PROFILE_KEY.EMAIL.val);
Jousitili = ammattilainenfileBundle.getString (
AuthzConstants.PROFILE_AVAIN.KÄYTTÄJÄTUNNUS.val);
Merkkijonon postinumero = profileBundle.getString (
AuthzConstants.PROFILE_AVAIN.POSTIKOODI.val);
runOnUiThread (uusi Runnable () {@Override
public void run () {
updateProfileTiedot (nimi, sähköposti, tili, postinumero);
}
});
} - Toteuta onError sinun puolestasi ProfileKuuntelija.
onError sisältää an Todennusvirhe esine, joka sisältää virheen yksityiskohdat./* Ammattilaisen hankinnassa tapahtui virhefile. */ @Override
public void onError (AuthError ae) {
/ * Yritä uudelleen tai ilmoita virheestä käyttäjälle * /
} - Toteuta onErrorfor sinun AuthorizeListener.
/ * Sovelluksen valtuutusyrityksessä tapahtui virhe.
*/
@Ohittaa
public void onError (AuthError ae) {
/ * Ilmoita käyttäjälle virheestä * /
} - Toteuta onCancelfor sinun AuthorizeListener.
Koska valtuutusprosessi näyttää kirjautumisnäytön (ja mahdollisesti suostumusnäytön) käyttäjälle a web selain (tai a webview), Käyttäjällä on mahdollisuus peruuttaa kirjautuminen tai siirtyä pois web sivu. Jos he peruuttavat kirjautumisprosessin nimenomaisesti, onCancel kutsutaan. Jos onCancelis kutsutaan, haluat nollata käyttöliittymän./ * Valtuutus peruutettiin, ennen kuin se saatettiin valmistua. * /
@Ohittaa
public void onCancel (Bundle-aihe) {
/ * palauta käyttöliittymä kirjautumisvalmiiksi * /
}Huomautus: Jos käyttäjä siirtyy pois selaimen kirjautumisnäytöstä tai web view ja vaihtaa takaisin sovellukseesi, SDK ei havaitse, että kirjautumista ei ole suoritettu loppuun. Jos havaitset käyttäjän toiminnan sovelluksessasi ennen sisäänkirjautumista, voit olettaa, että käyttäjä on siirtynyt pois selaimesta ja reagoi sen mukaisesti.
Tarkista käyttäjätunnus käynnistyksen yhteydessä
Jos käyttäjä kirjautuu sovellukseesi, sulkee sovelluksen ja käynnistää sovelluksen uudelleen myöhemmin, sovelluksella on edelleen lupa hakea tietoja. Käyttäjää ei kirjata ulos automaattisesti. Käynnistyksen yhteydessä voit näyttää käyttäjän kirjautuneena, jos sovelluksesi on edelleen valtuutettu. Tässä osassa kerrotaan, miten getTokenin avulla voit tarkistaa, onko sovellus edelleen valtuutettu.
- Luo a Tunnuslistaja.
Tunnuslistaja toteuttaa APIListener käyttöliittymä ja käsittelee getToken-puhelun tuloksen. APIListener sisältää kaksi menetelmää: OnSuccessissa ja onError (se ei tue onCancel koska ei ole mitään tapaa peruuttaa a getToken puhelu). OnSuccessissa vastaanottaa Bundle-objektin, jossa on tunnustiedot, kun onError saa Todennusvirhe esine virheen kanssa.yksityisluokka TokenListener toteuttaa APIListener { / * getToken suoritettu onnistuneesti. * / @Override
public void onSuccess (paketin vastaus) {
}
/ * Tunnuksen hakemisyrityksessä tapahtui virhe. * / @Override
public void onError (AuthError ae) {
}
} - Vuonna onStart toimintatapasi, soita getToken onko sovelluksella edelleen lupa.
getToken noutaa raakan käyttöoikeustunnuksen, jonka AmazonAuthorizationManager käyttää asiakkaan ammattilaisen käyttämiseenfile. Jos tunnuksen arvo ei ole tyhjä, sovellus on edelleen valtuutettu ja soittaa getProfile pitäisi onnistua. getToken vaatii samat laajuudet, joita pyysit valtuutuksessasi.
getToken-tuki asynkroniset puhelut samalla tavalla kuin getProfile, joten sinun ei tarvitse estää käyttöliittymää tai luoda omaa työkiertoa. Jos haluat soittaa getTokenille asynkronisesti, välitä objekti, joka tukee APIListener käyttöliittymä lopullisena parametrina.@Ohittaa
suojattu void onStart () {
super.onStart
(); mAuthManager.getToken (uusi merkkijono [] {“profile","postinumero"},
uusi
TokenListener ());
} - Toteuta OnSuccessissa sinun puolestasi Tunnuslistaja.
OnSuccesshas kaksi tehtävää: hakea tunniste paketista ja soittaa, jos tunnus on kelvollinen getProfile.
Tunnustietojen noutamiseksi paketista käytämme AuthzConstants luokassa. OnSuccessissa nippu sisältää tunnuksen tiedot BUNDLE_KEY.TOKEN -arvossa. Jos arvo ei ole nolla, tämä esimampsoita getProfile käyttämällä samaa kuuntelijaa, jonka ilmoitit edellisessä osassa (katso vaiheet 7 ja 8)./ * getToken suoritettu onnistuneesti. * /
@Ohittaa
public void onSuccess (paketin vastaus) {
viimeinen merkkijono authzToken =
response.getString (AuthzConstants.BUNDLE_KEY.TOKEN.val);
if (! TextUtils.isEmpty (authzToken))
{
// Hae ammattilainenfile tiedot
mAuthManager.getProfile(uusi ProfileKuuntelija ());
}
}
ClearAuthorizationState -menetelmä tyhjentää käyttäjän valtuutustiedot AmazonAuthorizationManager -paikallisesta tietovarastosta. Käyttäjän on kirjauduttava sisään uudelleen, jotta sovellus voi noutaa profile tiedot. Tällä menetelmällä voit kirjautua ulos käyttäjältä tai ratkaista sovelluksen kirjautumisongelmia.
- Ota uloskirjautuminen
Kun käyttäjä on kirjautunut sisään, sinun on annettava uloskirjautumismekanismi, jotta hän voi poistaa ammattilaisensafile tiedot ja aiemmin hyväksytyt käyttöalueet. Mekanismisi voi olla hyperlinkki tai valikkokohta. Tätä varten exampluomme onClick menetelmä napille. - Soita uloskirjautumiskäsittelijässäsi clearAuthorizationState. clearAuthorizationState poistaa käyttäjän valtuutustiedot (käyttöoikeudet, profile) paikallisesta kaupasta. clearAuthorizationStatetakes ei parametreja paitsi APIListener palata menestykseen tai
- Julista tuntematon APIListener.
Anonyymit luokat ovat hyödyllinen vaihtoehto uuden luokan julistamiselle käyttöönotettavaksi APIListener. Katso Käsittele kirjautumispainiketta ja hanki Profile Data (s. 17) exampanna sen julistaa kuuntelijaluokat. - Toteuta OnSuccessissa sisällä APIListener
Kun clearAuthorizationState onnistuu, päivitä käyttöliittymäsi poistaaksesi viittaukset käyttäjälle ja tarjoa kirjautumismekanismi, jota käyttäjät voivat käyttää kirjautumiseen uudelleen. - Toteuta onError sisällä APIListener.
If clearAuthorizationStatereturns virhe, voit antaa käyttäjän yrittää kirjautua uudelleen.@Ohittaa
protected void onCreate(Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
/ * Aikaisemmat Luo-ilmoitukset jätetty pois * /
// Etsi painike, jolla on kirjautumistunnus, ja määritä napsautusten käsittelijä
mLogoutButton = (painike) etsiViewById (R.id.logout);
mLogoutButton.setOnClickListener (uusi OnClickListener () {
@Ohittaa
public void onClick (View v) {
mAuthManager.clearAuthorizationState (uusi
APIListener () {
@Ohittaa
public void onSuccess (Bundle-tulokset) {
// Aseta uloskirjautunut tila käyttöliittymässä
}
@Ohittaa
public void onError (AuthError authError) {
// Kirjaa virhe
}
});
}
});
}
Jotkut AmazonAuthorizationManager menetelmät palauttavat Future -objektin. Tämän avulla voit kutsua menetelmää synkronisesti sen sijaan, että lähetät kuuntelijan parametriksi. Jos käytät Future -objektia, älä käytä sitä käyttöliittymässä. Jos estät käyttöliittymän säikeen yli viiden sekunnin ajan, näyttöön tulee kehote ANR (Application Not Respond). Kahvassa oleva kirjautumispainike ja Hanki Profile Tiedot esimample, OnSuccessissa menetelmä AuthorizeListener kutsutaan työntekijän säikeellä, jonka on luonut AmazonAuthorizationManager. Tämä tarkoittaa, että on turvallista käyttää kyseistä säiettä soittaakseen getPirollefile synkronisesti. Jos haluat soittaa synkronisen puhelun, määritä palautusarvo kohteesta hanki Pirofile Tuleva-objektiin ja soita gietmetode odota, kunnes menetelmä on valmis.
Fuiture.get palauttaa Bundle-objektin, joka sisältää a TULEVA TYYPPI arvo MENESTYS, VIRHE, or PERUUTTAA. Jos menetelmä onnistui, sama nippu sisältää PRO: nFILE_KEY -arvot profile tiedot. Esimampseuraavat:
/ * Valtuutus valmistui onnistuneesti. * / @Ohittaa public void onSuccess (paketin vastaus) { Future <Bundle> future = mAuthManager.getProfile(tyhjä); Nipputulos = future.get (); // Selvitä, onnistuiko puhelu ja hae ammattilainenfile Kohde tulevaisuuden_tyyppi = result.get (AuthzConstants.BUNDLE_KEY.FUTURE.val); if (tulevaisuuden_tyyppi == AuthzConstants.FUTURE_TYPE.SUCCESS) { Merkkijonon nimi = result.getString (AuthzConstants.PROFILE_AVAIN.NAME.val); Merkkijonon sähköposti = result.getString (AuthzConstants.PROFILE_KEY.EMAIL.val); Jousitili = result.getString (AuthzConstants.PROFILE_AVAIN.KÄYTTÄJÄTUNNUS.val); Merkkijonon postinumero = result.getString (AuthzConstants.PROFILE_AVAIN.POSTIKOODI.val); runOnUiThread (uusi Runnable () {@Override public void run () {updateProfileTiedot (nimi, sähköposti, tili, postinumero); } }); } else if (tulevaisuuden_tyyppi == AuthzConstants.FUTURE_TYPE.ERROR) { // Hae virheobjekti AuthError authError = AuthError.extractError (tulos); / * Käytä authError diagnosoida virhe * / } |
Kirjaudu sisään Amazonin aloitusoppaalla Androidille - Lataa [optimoitu]
Kirjaudu sisään Amazonin aloitusoppaalla Androidille - Lataa