Logige sisse iOS-i Amazoni algusjuhendiga
Logige sisse Amazoniga: iOS-i alustamise juhend
Autoriõigus © 2016 Amazon.com, Inc. või selle sidusettevõtted. Kõik õigused kaitstud.
Amazon ja Amazoni logo on Amazon.com, Inc. või selle sidusettevõtete kaubamärgid. Kõik muud kaubamärgid, mis ei kuulu Amazonile, on nende vastavate omanike omand.
Alustamine iOS-i jaoks
Selles juhendis näitame teile, kuidas oma rakendusse Logi sisse Amazoniga lisada. Pärast selle juhendi täitmist peaks teie rakenduses olema toimiv sisselogimine Amazoniga
Xcoodi installimine
Sisselogimise Amazon SDK-ga iOS-ile pakub Amazon, et aidata teil oma rakendusega Logi sisse lisada Amazoniga lisada. SDK on mõeldud kasutamiseks koos Xcode'i arenduskeskkonnaga. SDK toetab rakendusi, mis töötavad operatsioonisüsteemis iOS 7.0 ja uuemates versioonides, kasutades ARMv7, ARMv7s, ARM64, i386 ja x86_64.
Xcode'i saate installida Mac App Store'ist. Lisateavet vt Xcode: mis on uut saidil developer.apple.com.
Pärast Xcode'i installimist saate seda teha Installige iOS-i jaoks sisselogimine Amazon SDK-ga ja Käivitage Sample App, nagu allpool kirjeldatud.
Installige iOS-i jaoks sisselogimine Amazon SDK-ga
IOS -i sisselogimine Amazon SDK -ga on saadaval kahes paketis. Esimene sisaldab iOS -i kogu ja täiendavaid dokumente. Teine sisaldab naguample rakendus, mis võimaldab kasutajal sisse logida ja view nende profffile andmeid.
Kui te pole veel Xcode'i installinud, vaadake juhiseid jaotises Installige Xcode ülaltoodud jaotis.
- Laadi alla Logi sisseAmazoniga SDKForiOS.zip ja ekstraheerige files kõvaketta kataloogi.
Te peaksite nägema a Logi sisseAmazon.frameworkiga kataloogi. See sisaldab sisselogimist Amazoniga.
Tõmbluku ülemisel tasemel on a Logi sisseAmazoniga.doc seatud kataloog. See sisaldab API dokumentatsiooni. - Vaata Installige sisselogimine Amazoni raamatukoguga juhiste saamiseks teegi lisamiseks iOS-i projekti.
Kui iOS-i jaoks on installitud sisselogimine Amazon SDK-ga, saate seda teha Looge uus sisselogimine Amazoni projektiga pärast Amazoniga registreerumine sisselogimisega.
Käivitage Sample App
Et käivitada sample rakendus, avage sampsisse Xcode.
- Laadi alla SampleLoginWithAmazonAppForiOS.zip ja kopeerige
SampleLoginWithAmazonAppForiOS kataloog oma kausta Dokumendid. - Käivitage Xcode. Kui ilmub dialoog Tere tulemast Xcode'i, klõpsake nuppu Ava muu. Vastasel korral klõpsake peamenüüs nuppu File ja valige Ava.
- Valige kaust Dokumendid ja valige
SampleLoginWithAmazonAppForiOS/LoginWithAmazonSample/ Logi sisse Amazonasegaample.xcodeproj. Klõpsake Avatud. - SampProjekt peaks nüüd laadima. Kui see on lõpetatud, valige Toode peamenüüst ja valige Jookse
Amazoniga registreerumine sisselogimisega
Enne kui saate kasutada Amazoniga sisselogimist a websaidil või mobiilirakenduses peate registreerima rakenduse Amazoniga Login sisse. Teie Amazoniga sisselogimisrakendus on registreering, mis sisaldab teie ettevõtte põhiteavet ja teavet kõigi kohta webloodud sait või mobiilirakendus, mis toetab Amazoniga sisselogimist. Seda ettevõtteteavet kuvatakse kasutajatele iga kord, kui nad kasutavad teie Amazoniga sisselogimist websaidil või mobiilirakenduses. Kasutajad näevad teie rakenduse nime, teie logo ja linki teie privaatsuspoliitikale. Need sammud näitavad, kuidas registreerida sisselogimine Amazoni rakendusega ja lisada sellele kontole iOS -i rakendus.
Vaadake järgmisi teemasid
- Registreerige oma sisselogimine Amazoni rakendusega
- Lisage iOS Pro rakendusele Security Profile
- iOS-i komplekti ID ja API-võtmed
o Määrake iOS-i rakenduse komplekti identifikaator
o Too iOS-i API-võti
Registreerige oma sisselogimine Amazoni rakendusega
- Mine aadressile https://login.amazon.com.
- Kui olete varem Amazoniga sisse loginud, klõpsake nuppu Rakenduse konsool. Muidu klõpsake Registreeru.
Teid suunatakse müüja keskusesse, mis haldab Amazoniga sisselogimise rakenduste registreerimist. Kui olete Müüja keskuse kasutamisel esimest korda, palutakse teil seadistada Müüja keskuse konto. - Klõpsake Registreerige uus taotlus. The Registreerige oma taotlus ilmub vorm:
a. Vormile Registreerige oma taotlus sisestage nimi ja a Kirjeldus teie taotluse jaoks.
The Nimi on nimi, mis kuvatakse nõusolekukuval, kui kasutajad nõustuvad teie rakendusega teavet jagama. See nimi kehtib Androidi, iOS-i ja websaidi versioonid teie rakendusest.
b. Sisestage privaatsusteatis URL teie taotluse jaoks.
Privaatsusteatis URL on teie ettevõtte või rakenduse privaatsuspoliitika asukoht (ntample, http: //www.example.com/privacy.html). See link kuvatakse kasutajatele nõusoleku ekraanil.
c. Kui soovite lisada a Logo pilt oma rakenduse jaoks klõpsake nuppu Sirvige ja leidke sobiv pilt.
See logo kuvatakse sisselogimis- ja nõusolekukuval, et esindada teie ettevõtet või websaidil. Logo kahaneb 50 piksli kõrguseks, kui see on pikem kui 50 pikslit; logo laius ei ole piiratud. - Klõpsake Salvesta. Sinu sampregistreerimine peaks välja nägema sarnane:
Kui teie rakenduse põhiseaded on salvestatud, saate konkreetsete jaoks sätteid lisada websaidid ja mobiilirakendused, mis kasutavad seda sisselogimist Amazoni kontoga.
Kui teie rakenduse erinevatel versioonidel on erinevad kogumi ID-d, näiteks ühe või mitme testversiooni ja tootmisversiooni jaoks, nõuab iga versioon oma API-võtit. Alates iOS-i seaded klõpsake oma rakenduse ikoonil Lisa API võti nupp rakenduse jaoks täiendavate võtmete loomiseks (üks versiooni kohta).
Lisage iOS Pro rakendusele Security Profile
Kui teie rakenduse põhiseaded on salvestatud, saate konkreetsete jaoks sätteid lisada websaidid ja mobiilirakendused, mis kasutavad seda sisselogimist Amazoni kontoga.
IOS-i rakenduse registreerimiseks peate määrama rakenduse projekti Bundle'i identifikaatori. Amazoniga sisselogimine kasutab API võtme loomiseks komplekti ID-d. API-võti annab teie rakendusele juurdepääsu autoriseerimisteenusega Amazon with Amazon. IOS-i rakenduse lisamiseks oma kontole toimige järgmiselt.
- Klõpsake rakenduste ekraanil iOS-i seaded. Kui teil on juba iOS-i rakendus registreeritud, otsige Lisa API võti nuppu iOS-i seaded osa.
The iOS-i rakendus Ilmub üksikasjade vorm:
- Sisestage Silt oma iOS -i rakendusest. See ei pea olema teie rakenduse ametlik nimi. See lihtsalt tuvastab selle konkreetse iOS -i rakenduse rakenduste hulgas ja websaidid, mis on registreeritud teie Amazonase rakendusega sisselogimiseks.
- Sisestage oma Bundle ID. See peab vastama teie iOS-i projekti kogumi identifikaatorile. Kogumi identifikaatori määramiseks avage projekt Xcode'is. Avage projekti atribuutide loend ( -Info.plist) Projekti navigaator. Kogumi identifikaator on üks loendis olevatest omadustest.
- Klõpsake Salvesta.
iOS-i komplekti ID ja API-võtmed
Bundle'i identifikaator on iga iOS-i rakenduse jaoks ainulaadne. Amazoniga sisselogimine kasutab teie API võtme koostamiseks komplekti ID. API-võti võimaldab rakendusega Login with Amazon autoriseerimisteenusel teie rakenduse ära tunda.
Määrake iOS-i rakenduse komplekti identifikaator
- Avage oma rakenduse projekt Xcode'is.
- Avage Teabe omaduste loend projekti jaoks ( -Info.plist) aastal Projekti navigaator.
- Otsi Kogumi tunnus omaduste loendis.
Toogige iOS-i API-võti
Pärast iOS-i versiooni registreerimist ja Bundle ID esitamist saate API-võtme hankida oma rakenduse Login with Amazon registreerimislehelt. Peate selle API-võtme oma projekti atribuutide loendisse lisama. Kuni te seda ei tee, pole rakendusel õigust suhelda autoriseerimisteenusega Login with Amazon.
1. Mine lehele https://login.amazon.com.
2. Klõpsake Rakenduse konsool.
3. Aastal Rakendused klõpsake oma rakendusel.
4. Leidke oma iOS-i rakendus all iOS-i seaded jaotises. Kui te pole veel iOS-i rakendust registreerinud, vaadake Lisage iOS Pro rakendusele Security Profile.
5. Klõpsake Loo API võtmeväärtus. Hüpikaken kuvab teie API võtme. Võtme kopeerimiseks klõpsake nuppu Valige Kõik kogu klahvi valimiseks.
Märkus. API võtmeväärtus põhineb osaliselt selle loomise ajal. Seega võivad teie genereeritud API-võtme väärtus (ed) algsest erineda. Võite oma rakenduses kasutada mõnda neist API võtmeväärtustest, kuna need kõik kehtivad.
6. Vaata Lisage oma API võti oma rakenduse atribuutide loendisse juhised API võtme lisamiseks iOS-i rakendusse
Amazon Projectiga sisselogimise loomine
Selles jaotises saate teada, kuidas luua Amazoniga sisselogimiseks uut Xcode'i projekti ja projekti konfigureerida.
Vaadake järgmisi teemasid:
- Looge uus sisselogimine Amazoni projektiga
- Installige sisselogimine Amazoni raamatukoguga
- Lisage oma API võti oma rakenduse atribuutide loendisse
- Lisage a URL Skeem oma rakenduse atribuutide loendisse
- Lisage oma rakendusse Amazoni rakenduse transpordi turvalisuse erand Atribuutide loend
MÄRKUS. See uus samm on praegu vajalik iOS 9 SDK-ga arendamisel - Lisage oma rakendusse sisselogimine Amazoni nupuga
Looge uus sisselogimine Amazoni projektiga
Kui teil pole veel Amazoniga sisselogimiseks rakenduse projekti, järgige selle loomiseks allolevaid juhiseid. Kui teil on olemasolev rakendus, minge allolevasse jaotisse Installi sisselogimine Amazoni raamatukoguga.
- Käivitage Xcode.
- Kui teile esitatakse a Tere tulemast Xcode'i dialoogiboksis, valige Looge uus Xcode-projekt.
Vastasel juhul File menüü, valige Uus ja Projekt. - Valige loodava projekti tüüp ja klõpsake nuppu Edasi.
- Sisestage a Toote nimi ja a Ettevõtte identifikaator. Pange tähele oma Komplekti identifikaatorja klõpsake Edasi.
- Valige asukoht, kuhu oma projekt salvestada, ja klõpsake nuppu Loo.
Nüüd on teil uus projekt, mida saate kasutada Amazoniga sisselogimiseks helistamiseks.
Installige sisselogimine Amazoni raamatukoguga
Kui te pole veel iOS-i jaoks sisselogimist Amazon SDK-ga alla laadinud, vaadake Installige iOS-i jaoks sisselogimine Amazon SDK-ga.
Amazoniga sisselogimise projekt peab linkima Logi sisseAmazon.frameworkiga ja Turvalisus.raam raamatukogud. Samuti peate seadistama raamistiku otsingutee, et leida Amazoni päistega sisselogimine
- Kui teie projekt on avatud Xcode'is, valige Raamistikud klõpsake nuppu File peamenüüst ja valige Lisa Files juurde “Projekt”.
- Valige dialoogiboksis Logi sisseAmazon.frameworkiga ja klõpsake nuppuLisa.
Kui kasutasite teeki Login with Amazon 1.0, kustutage kaustast Frameworks login-with-amazon sdk kataloog ja login-with-amazon-sdk.a. Klõpsake nuppu Muuda peamenüüst ja valige Kustuta. - Valige jaotises oma projekti nimi Projekti navigaator.
The Projekti redaktor kuvatakse Xcode'i tööruumi redaktorialal. - Klõpsake oma projekti nime all Sihtmärgid, ja valige Ehitamisetapid. Laiendage link binaarne raamatukogudega ja klõpsake teegi lisamiseks plussmärki.
- Sisestage otsingukasti Turvalisus.raam. Valige Turvalisus.raam ja klõps Lisa.
- Sisestage otsingukasti SafariServices.framework. Valige SafariServices.framework ja klõpsake Lisa.
- Sisestage otsingukasti CoreGraphics.framework. Valige CoreGraphics.framework ja klõpsake Lisa
- Valige Järje seaded. Klõpsake nuppu Kõik view kõik seaded.
- Under Otsinguteed, veenduge, et Logi sisseAmazon.frameworkiga kataloog asub Raamotsingu teed.
Näiteksample:
Kui kasutasite teeki Logi sisse Amazon 1.0 abil, saate kustutada kõik viited teegi 1.0 teele Päiseotsingu teed or Raamatukogu otsinguteed. - Klõpsake peamenüüs Toode ja valige Ehitada. Ehitamine peaks edukalt lõpule jõudma.
Enne projekti koostamist asendage see, kui kasutasite teeki Login with Amazon 1.0 #import "AIMobileLib.h", #import "AIAuthenticationDelegate.h", or #import „AIError.h” oma allikas files koos #import
.
Logi sisseAmazoniga.h sisaldab kõiki sisselogimist koos Amazoni päistega korraga.
Lisage oma API võti oma rakenduse atribuutide loendisse
Kui registreerite oma iOS-i rakenduse Amazoniga sisselogimise kaudu, määratakse teile API-võti. See on identifikaator, mida Amazon Mobile Library kasutab teie rakenduse identifitseerimiseks autoriseerimisteenusega Login with Amazon. Amazon Mobile Library laadib selle väärtuse käitusajal API võtme atribuudi väärtusest teie rakenduse teabe atribuutide loendis.
- Kui teie projekt on avatud, valige Toetamine Files seejärel valige kaust -Info.plist file (kus on teie projekti nimi). See peaks avama atribuutide loendi redigeerimiseks:
- Veenduge, et ükski kirjetest pole valitud. Seejärel klõpsake peamenüüs nuppu toimetaja, ja Lisa üksus. Sisestage APIKey ja vajutage Sisestage.
- Topeltklõpsake all Väärtus veerg väärtuse lisamiseks. Kleepige väärtuseks oma API võti.
Lisage a URL Skeem oma rakenduse atribuutide loendisse
Kui kasutaja sisse logib, kuvatakse talle Amazoni sisselogimisleht. Selleks, et teie rakendus saaks sisselogimise kinnituse, peate lisama a URL skeem nii, et web leht saab teie rakendusse tagasi suunata. The URL skeem tuleb deklareerida kui amzn- (ntample, amzncom.example.app). Lisateavet vt Kasutades URL Rakendustega suhtlemise skeemid saidil developer.apple.com.
- Kui teie projekt on avatud, valige Toetamine Files seejärel valige kaust -Info.plist file (kus on teie projekti nimi). See peaks avama atribuutide loendi redigeerimiseks:
- Veenduge, et ükski kirjetest pole valitud. Seejärel klõpsake peamenüüs nuppu toimetaja, ja Lisa üksus. Sisestage või valige URL tüübid ja vajutage Sisestage.
- Laienda URL tüübid paljastada Üksus 0. Valige Üksus 0 ja klõpsake peamenüüs nuppu Redaktor ja Lisa üksus. Sisestage või valige URL Identifikaator ja vajutage Sisestage.
- Valige Punkt 0 all URL Identifikaator ja topeltklõpsake veeru Väärtus väärtuse lisamiseks. Väärtus on teie kogumi ID. Oma kogumi ID leiate omaduste loendist komplekti identifikaatorina.
- Valige Punkt 0 all URL tüübid ja klõpsake peamenüüs nuppu Toimetaja ja Lisa üksus. Sisestage või valige URL Ja vajutage sisestusklahvi.
- Valige Punkt 0 all URL Skeemid ja topeltklõpsake all Väärtus veerg a lisamiseks väärtus. Väärtus on teie komplekti ID amzn- eelsoodustatud (ntample, amzn com.example.app). Komplekti ID leiate järgmiselt Kogumi tunnus omaduste loendis.
Lisage oma rakendusse Amazoni rakenduse transpordi turvalisuse erand
Atribuutide loend
Alates iOS 9 -st rakendab Apple rakenduste ja rakenduste vaheliste turvaliste ühenduste jaoks rakenduste transpordi turvalisust (ATS) web teenused. Lõpp -punkt (api.amazon.com), millega Amazon SDK -ga sisselogimine teabevahetuseks suhtleb, ei vasta veel ATS -ile. Lisage api.amazon.com jaoks erand, et võimaldada sujuv suhtlus SDK ja Amazoni serveri vahel.
- Kui teie projekt on avatud, valige Toetamine Files seejärel valige kaust -Info.plist file (kus on teie projekti nimi). See peaks avama atribuutide loendi, mis eelistab:
- Veenduge, et ükski kirjetest pole. Seejärel klõpsake peamenüüs nuppu Toimetaja, ja Lisa üksus. Sisestage või valige NSAppTransportSecurity ja vajutage Sisestage.
- Laienda NSAppTransportSecurity ja klõpsake peamenüüs nuppu Toimetaja ja Lisa üksus. Sisestage või valige NSExceptionDomains ja vajutage Sisestage.
- Laienda NSExceptionDomains ja klõpsake peamenüüs nuppu Toimetaja ja Lisa üksus. Sisestage amazon.com ja vajutage Sisestage.
- Laienda amazon.com ja klõpsake peamenüüs nuppu Toimetaja ja Lisa üksus.Sisenema NSExceptionRequiresForwardSecrecy ja vajutage Sisestage.
- Valige NSExceptionRequiresForwardSecrecy ja topeltklõpsake all Väärtus veeru lisamiseks valige a Tüüp of Boolean ja a Väärtus of EI.
Amazoniga sisselogimine pakub mitut standardset nuppu, mille abil saate kasutajaid teie rakendusest sisse logida. Selles jaotises on toodud sammud ametliku sisselogimise allalaadimiseks Amazoniga ja selle sidumiseks iOS-i UIB-nupuga.
- Lisage oma rakendusse tavaline UIB-nupp.
Juhiseid ja teavet rakenduse nupu lisamise kohta vaadake Loomine ja seadistamine View Objektid ja Alustage iOS-i rakenduste arendamist juba täna saidil developer.apple.com. - Lisage Puudutage sees nupu sündmus nimega meetodile onLoginButtonClicked. Jätke rakendus praegu tühjaks. The Loomine ja Seadistamine View Objektid ja Alustage iOS-i rakenduste arendamist juba täna apple.com-i dokumendid sisaldavad nupusündmuse lisamise samme.
- Valige nupu pilt.
Vaadake meie sisselogimist Amazoniga Stiilijuhised nuppude loendi jaoks, mida saate oma rakenduses kasutada. Laadige alla eksemplar LWA_for_iOS.zip file. Leidke oma eelistatud nupp nii 1x kui 2x kataloogist ja ekstraheerige need zipist. Eemaldage oma nupu vajutatud versioon, kui soovite nuppu valitud olekus kuvada. - Lisage pildid oma projekti.
a. Klõpsake Xcode'is oma projekti laadimisel nuppu File peamenüüst ja valige Lisa Files "projektile".
b. Valige dialoogis nupu pilt fileallalaaditud ja klõpsatud Lisa.
c. Nupud peaksid nüüd olema projektikataloogi all. Teisaldage need jaotisse Toetavad Filekaust. - Lisage pilt oma nupule.
Nupu pildi lubamiseks saate muuta nupu atribuuti või kasutada nuppu setImage: forState meetod UIB-nupp objekt. Nupu kujutise atribuudi muutmiseks toimige järgmiselt.
a. Avage oma rakenduse süžeeskeem.
b. Valige oma klaviatuuril nupp, klõpsates seda või valides selle View Kontroller Stseenipuu.
c. Aastal Kommunaalteenused aknas avage Atribuudid inspektor.
d. Määrake atribuutide inspektori ülaosas nupu Tüüp väärtuseks Süsteem.
e. Valige teises seadete rühmas olekule Konfigureerimine Vaikimisi.
f. Teises seadete rühmas rippige seade Image.
g. Valige projekti lisatud nupu Logi sisse Amazoniga nupp. Ärge valige 2x versiooni: see laaditakse automaatselt suure tihedusega ekraaniga (Retina) seadmetesse.
h. Määrake taustpildi jaoks sama pilt.
i. Kui soovite määrata nupu vajutatud versiooni, valige olekuks Config olekuks Valitud ja määrake pildi nupu _Vajutatud versioon.
j. Vajadusel reguleerige süžeeskeemil oma nupu suurust pildi mahutamiseks.
SDK kasutamine iOS-i API-de jaoks
Selles jaotises lisate oma projektile koodi, et sisse logida Amazoniga sisselogimisega kasutajaga.
Vaadake järgmisi teemasid:
- Käsitsege sisselogimisnuppu ja hankige Profile Andmed
- Kontrollige käivitamisel kasutaja sisselogimist
- Kustutage autoriseerimise olek ja logige kasutaja välja
Selles jaotises selgitatakse, kuidas authorizeUserForScopes: delegeerima: ja getProfile: API -d kasutaja sisselogimiseks ja tema professionaali hankimiseksfile andmed. See hõlmab ka selle loomist onLoginButtonClicked: kuulaja sisselogimiseks Amazoni nupuga.
- Lisage oma iOS-i projekti Amazoniga sisselogimine. Vt jaotist Sisselogimise installimine Amazoni raamatukoguga.
- Importige Amazon API-ga sisselogimine oma allikasse file.
Amazon API-ga sisselogimise importimiseks lisage järgmine #importatsioonid oma allikale file:#import - Looge AMZNAuthorizeUserDelegateclass ellu viia
AIAautentificationDelegate.
Millal authorizeUserForScopes: delegeerima: lõpetab, helistab see requestDidSucceed: or requestDidFail: meetod objektil, mis rakendab AIAautentificationDelegate protokolli.@interface AMZNAuthorizeUserDelegate: NSObject @lõpp Lisateabe saamiseks vt Protokollidega töötamine saidil developer.apple.com.
- Helista authorizeUserForScopes: delegeerima: in onLoginButtonClicked.
Kui järgisite juhiseid Lisage oma rakendusse sisselogimine Amazoni nupuga, teil peaks olema onLoginButtonClicked: meetod lingitud nupuga Logi sisse Amazoniga. Selle meetodi korral helistage authorizeUserForScopes: delegeerige: paluge kasutajal sisse logida ja volitage teie rakendus.
See meetod võimaldab kasutajal sisselogimist ja nõutava teabe kinnitamist ühel järgmistest viisidest:
1.) Lülitub sisse web view turvalises kontekstis (kui seadmesse on installitud rakendus Amazon Shopping)
2.) Lülitub Safarile View Kontroller (iOS 9 ja uuemad versioonid)
3.) Lülitub süsteemibrauserile (iOS 8 ja vanemates versioonides)
Esimese valiku turvaline kontekst on saadaval, kui seadmesse on installitud rakendus Amazon Shopping. Kui kasutaja on juba sisse logitud rakendusse Amazon Shopping, jäetakse sisselogimisleht vahele, mis viib a Ühekordne sisselogimine (SSO) kogemusi.Kui teie rakendus on volitatud, on see volitatud ühe või mitme andmekogumi jaoks, mida nimetatakse ulatuseks. Esimene parameeter on ulatus ulatus, mis hõlmab kasutajaandmeid, mida te Amazonilt sisse logite. Esimest korda, kui kasutaja teie rakendusse sisse logib, kuvatakse talle loetelu andmetest, mida te taotlete ja mille kohta teil palutakse kinnitust. Amazoniga sisselogimine toetab praegu kolme ulatust: profile, mis sisaldab kasutaja nime, e-posti aadressi ja Amazoni konto ID; profile:kasutaja ID, mis sisaldab ainult Amazoni konto ID-d; ja Postiindeks, mis sisaldab kasutaja postiindeksit.
Teine parameeter kuni authorizeUserForScopes: delegeerima: on objekt, mis rakendab AIAtõendamineDelegateprotokol, antud juhul üks AMZNAuthorizeUserDelegate klass.- (IBAction) onLogInButtonClicked: (id) saatja {
// Tehke autoriseerimiskõne SDK-le, et saada turvaline juurdepääsuluba
// kasutaja jaoks.
// Esimese kõne ajal saate määrata minimaalse põhikõne
// ulatus on vajalik.// Mõlema reguleerimisala taotlemine praegusele kasutajale.
NSArray * requestScopes =
[NSArray arrayWithObjects:@”profile”, @” Postal_code ”, null];AMZNAuthorizeUserDelegate * delegeerima =
[AIMobileLib authorizeUserForScopes: requestScopes delegeerida: delegeerima];
[[AMZNAuthorizeUserDelegate eraldamine] initWithParentController: ise];Lisage oma delegaadi juurutamise päis klassi kutsele
authorizeUserForScopes :. Näiteksample:#import „AMZNAuthorizeUserDelegate.h” - Loo an AMZNGetProfileDelegeeri.
AMZNGetProfileDelegaat meie nimi klassile, mis rakendab
AIAtõendamineDelegateprotokol, ja töötleb getProfile: helistama. Meeldib AuthorizeUserForScopes: delegate :, getProfile: toetab requestDidSucceed: ja requestDidFail: protokollimeetodid. requestDidSucceed: saab APIRtulemus objekt koos profigafile andmed tulemi atribuudis. requestDidFail: saab AIEror objekt vea atribuudis oleva vea kohta.
Delegaadiklassi loomiseks tavalisest klassi deklaratsioonist importige
AIAuthenticationDelegate.hand lisage protokoll oma klassi päises olevale deklaratsioonile file:#import @liides AMZNGetProfileDelegaat: NSObject @end - Rakendada requestDidSucceed: jaoks sinu AMZNAuthorizeUserDelegate. In requestDidSucceed :, helistada getProfile: kliendiprofiili hankimiseksfile. getProfile:, meeldib authorizeUserForScopes: delegate: kasutab protokolli AIAuthenticationDelegate.
- (void) requestDidSucceed: (APIResult *) apiResult {
// Teie kood pärast seda, kui kasutaja on rakenduse volitanud
// taotletud ulatus.// Laadi uus view kontroller koos kasutajat identifitseeriva teabega
// kuna kasutaja on nüüd edukalt sisse logitud.AMZNGetProfileDelegaat* delegaat =
[[[AMZNGetProfileDelegeeri alloc] initWithParentController:parentViewKontroller] autorelease];
[AIMobileLib getProfile: delegaat];
}Lisage oma delegaadi juurutamise päis klassi kutsele getProfile:. Forexample:
#import “AMZNGetProfileDelegeeri.h ” - Rakendada requestDidSucceed: sinu jaoks AMZNGetProfileDelegeeri.
requestDidSucceed: on kaks peamist ülesannet: pro hankiminefile andmed alates APIRsult, ja edastada andmed kasutajaliidesele.
Profi hankimiseksfile andmed alates APIRsult, tulemuse omadusele juurde pääseda. Le getProfile: vastus, see omadus sisaldab kasutajaprofiili omaduste väärtuste sõnastikkufile omadused. Professionaalfile omadused on nimi, e-posti aadress, ja USER_ID pro jaoksfile ulatus ja
postiindeks jaoks postiindeks ulatus.- (void) requestDidSucceed: (APIResult *) apiResult {
// Hangi profile taotlus õnnestus. Pakkige professionaal lahtifile teavet
// ja edastage see vanemale view kontrollerNSString * nimi = [(NSDictionary *) apiResult.result
objectForKey: @ ”nimi”];
NSString * email = [(NSDictionary *) apiResult.result
objectForKey: @ ”email”];
NSString * user_id = [(NSDictionary *) apiResult.result
objectForKey: @ ”user_id”];
NSString * postikood = [(NSDictionary *) apiResult.result
objectForKey: @ ”postikood”];// Andmete edastamine view kontroller
} - Rakendada requestDidFail: sinu jaoks AMZNGetProfileDelegeeri.
requestDidFail: sisaldab an API viga objekt, mis sisaldab vea üksikasju. showLogInPageis hüpoteetiline meetod, mis lähtestaks peamise view kontroller, et kuvada nupp Logi sisse Amazoniga.- (void) requestDidFail: [APIError *] errorResponse {
// Hangi Profile pro taotlus nurjusfile ulatus.
// Kui veakood = kAIApplicationNotAuthorized,
// lubage kasutajal uuesti sisse logida.
if (errorResponse.error.code == kAIApplicationNotAuthorized) {
// Kuva kasutaja volitamise nupp.
[lapsevanemViewKontroller showLogInPage];
}
else {
// Käsitlege muid vigu
[[[[UIAlertView alloc] initWithTitle:@”” sõnum: [NSString
stringWithFormat: @ "Sõnumis:% @ ilmnes viga,
errorResponse.error.message] delegeerima: null
cancelButtonTitle: @ ”OK” otherButtonTitles: null] autorelease] näita];
}
} - Rakendada requestDidFail: jaoks sinu AMZNAuthorizeUserDelegate.
- (void) requestDidFail: [APIError *] errorResponse {
NSString * sõnum = errorResponse.error.message;
// Teie kood, kui autoriseerimine ebaõnnestub. [[[[UIAlertView alloc] initWithTitle:@”” sõnum: [NSString
stringWithFormat: @ ”Kasutaja autoriseerimine nurjus sõnumiga:% @”, errorResponse.error.message] delegeerima: null
cancelButtonTitle: @ ”OK” otherButtonTitles: null] autorelease] näita];
}10. Rakenda rakendus: avatudURL: sourceApplication: märkimine: teie projekti klassis, mis tegeleb UIApplicationDelegate protokoll (vaikimisi on see AppDelegateclass teie projektis). Kui rakendus esitab Amazoni sisselogimislehe ja kasutaja lõpetab sisselogimise, suunab see rakenduse abil rakendusse ümber URL Skeemige varem registreeritud rakendus. See ümbersuunamine edastatakse aadressile rakendus: avatudURL: sourceApplication: annotation :, mis naaseb JAH kui URL sai edukalt hakkama. käepideAvaURL: sourceApplication: on SDK teegi funktsioon, mis haldab sisselogimist Amazoni ümbersuunamisega URLs teile. Kui käepideAvaURL: sourceApplication: tagastab YES, siis URL käideldi.
- (BOOL) rakendus: (UIApplication *) rakendus
avatudURL: (NSURL *)url
sourceApplication: (NSString *) sourceApplication
annotatsioon: (id) annotatsioon
{
// Edastage url SDK-le autoriseerimiskoodi // sõelumiseks url.
BOOL onValidRedirectSignInURL =
[AIMobileLib käepideAvatudURL:url
sourceAppliation: hapu ceApplicati on);
if (! isValidRedirect Si gnlnURL)
tagastage EI;
// Rakendus võib ka tahta e-ga hakkama saada url tagastama JAH;
}MÄRKUS. See meetod on iOS 9-s aegunud, kuid vanemate platvormide kasutajate toe säilitamiseks tuleks see projekti kaasata. Lisateavet saidi kohta rakendus: avatudURL: sourceApplication: annotation :, vaata UIApplicationDelegate'i protokolli viide saidil developer.apple.com.
Kontrollige käivitamisel kasutaja sisselogimist
Kui kasutaja logib teie rakendusse sisse, sulgeb rakenduse ja taaskäivitab rakenduse hiljem, on rakendusel endiselt õigus andmeid hankida. Kasutajat ei logita automaatselt välja. Käivitamisel saate näidata kasutajat sisselogituna, kui teie rakendus on endiselt volitatud. Selles jaotises selgitatakse, kuidas seda kasutada
getAccessTokenForScopes: withOverrideParams: delegeerima: kas rakendus on endiselt volitatud.
- Loo an AMZNGetAccessTokenDelegate klass. AMZNGetAccessTokenDelegateimplements a AIAautentificationDelegate protokolli ja töötleb protokolli tulemust
getAccessTokenForScopes: withOverrideParams: delegeerima: helistada. AIAautentificationDelegate sisaldab kahte meetodit, requestDidSucceed: ja requestDidFail :. requestDidSucceed: saab APIRtulemus objekti sümboolsete andmetega, samas requestDidFail: saab API viga objekt vea kohta.#import @interface AMZNGetAccessTokenDelegate: NSObject
@lõpp
Lisage oma delegaadi juurutamise päis klassi kutsele
getAccessTokenForScopes: withOverrideParams: delegeerima :. Forexample:#import „AMZNGetAccessTokenDelegate.h” - Rakenduse käivitamisel helistage
getAccessTokenForScopes: withOverrideParams: delegeerima: kas rakendus on endiselt lubatud. getAccessTokenForScopes: withOverrideParams: delegeerima: otsib toores juurdepääsuluba, mida Logi sisse Amazoniga kliendiproffile juurdepääsuks kasutabfile. Kui meetod õnnestub, on rakendus endiselt volitatud ja helistab getProfile: peaks õnnestuma. getAccessTokenForScopes: withOverrideParams: delegeerima: kasutab AIAautentificationDelegate protokolli samamoodi nagu authorizeUserForScopes: delegeerige :. Delegaadi parameetrina edastage protokolli rakendav objekt.- (void) checkIsUserSignedIn {
AMZNGetAccessTokenDelegate * delegaat =
[[[AMZNGetAccessTokenDelegate alloc] initWithParentController:self] automaatväljaanne];
NSArray * requestScopes =
[NSArray arrayWithObjects:@”profile”, @” Postal_code ”, null]; [AIMobileLib getAccessTokenForScopes: requestScopes withOverrideParams: nil delegate: delegate];
} - Rakendada requestDidSucceed: sinu peal AMZNGetAccessTokenDelegate. requestDidSucceed: on üks ülesanne: helistada getProfile:. See eksample helistab getProfile: kasutades sama kuulajat, mille deklareerisite eelmises jaotises (vt juhiseid 6–8).
#import “AMZNGetProfileDelegeeri.h ”
#import- (void) requestDidSucceed: (APIResult *) apiResult {
// Teie juurdepääsuloa kasutamiseks mõeldud kood läheb siia.// Kuna rakendusel on meie reguleerimisala jaoks luba, saame seda teha
[AIMobileLib getProfile: delegaat];
// hangi kasutaja profile.
AMZNGetProfileDelegeeri* delegaat = [[[AMZNGetProfileDelegeeri alloc] initWithParentController: vanemViewKontroller] autorelease];
} - Rakendada requestDidFail: sinu peal AMZNGetAccessTokenDelegate.
requestDidFail: sisaldab an API viga objekt, mis sisaldab vea üksikasju. Kui saate vea, saate põhiseadme lähtestada view kontroller, et kuvada nupp Logi sisse Amazoniga.- (void) requestDidFail: [APIError *] errorResponse {
// Teie kood juurdepääsuloa nurjunud hankimiseks.
// Kui veakood = kAIApplicationNotAuthorized, lubage kasutajal
// uuesti sisselogimiseks.
if (errorResponse.error.code == kAIApplicationNotAuthorized) {
// Kuva sisselogimine Amazoni nupuga.
}
else {
// Käsitlege muid vigu
[[[[UIAlertView alloc] initWithTitle:@”” sõnum: [NSString
stringWithFormat: @ ”Sõnumiga:% @ ilmnes viga, errorResponse.error.message] delegeerima: null
cancelButtonTitle:@”OK” otherButtonTitles:nil] autorelease] show];
}
}
The clearAuthorizationState: meetod kustutab kasutaja autoriseerimisandmed AIMobileLib kohalik andmesalvestus. Kasutaja peab pro sisse toomiseks uuesti sisse logimafile andmed. Kasutage seda meetodit kasutajast välja logimiseks või rakenduses sisselogimisprobleemide tõrkeotsinguks.
- Deklareerige AMZNLogoutDelegate. See on klass, mis rakendab
AIAtõendamineDelegateprotokol. Oma eesmärkidel võime klassi pärida NSOobjekt:
#import @interface AMZNLogoutDelegate NSObject
@lõpp
Lisage oma delegaadi juurutamise päis klassi kutsele clearAuthorizationState :. Näiteksample:
#import „AMZNLogoutDelegate.h” - Helista clearAuthorizationState :.
Kui kasutaja on edukalt sisse loginud, võite pakkuda väljalogimismehhanismi, et ta saaks oma autoriseerimisandmed kustutada. Teie mehhanism võib olla hüperlink või menüüelement, kuid selle stsenaariumi puhul on eksample loob a logoutButtonClicked meetod väljalogimisnupu jaoks.- (IBAction) logoutButtonClicked: (id) saatja {
AMZNLogoutDelegate* delegate = [[[AMZNLogoutDelegate alloc] initWithParentController:self] automaatväljaanne]; [AIMobileLib clearAuthorizationState:delegate];
}Ainus parameeter kuni clearAuthorizationState on an AIAautentificationDelegate mis rakendab requestDidSucceed: ja requestDidFail :.
- Rakendada requestDidSucceed :. Seda meetodit kasutatakse siis, kui kasutaja teave on kustutatud. Seejärel peaksite neid näitama välja logituna.
- (void) requestDidSucceed: (APIResult *) apiResult {
// Teie lisaloogika pärast kasutaja volitust
// olek on kustutatud.
[[[UIAlertView alloc] initWithTitle:@”” message:@”Kasutaja on välja logitud.”
delegate:nil cancelButtonTitle:@”OK” otherButtonTitles:null] show];
} - Rakendada requestDidFail :. Seda meetodit nimetatakse juhul, kui mingil põhjusel ei saa kasutaja teavet vahemälust kustutada. Sel juhul ei tohiks te neid välja logituna näidata.
- (void) requestDidFail: [APIError *] errorResponse {
// Teie täiendav loogika pärast SDK tühjendamist ebaõnnestus
// volituse olek. [[[[UIAlertView alloc] initWithTitle:@”” sõnum: [NSString
stringWithFormat: @ "Kasutaja väljalogimine nurjus sõnumiga:% @",
errorResponse.error.message] delegeerima: null
cancelButtonTitle:@”OK” otherButtonTitles:nil] autorelease] show];
}
Testige oma integratsiooni
Käivitage rakendus iOS-i seadmes või simulaatoris ja kinnitage, et saate oma Amazon.com-i mandaadiga sisse logida.
Märkus. IOS10 simulaatoritel testimisel võite näha tõrketeadet APIKey rakenduse jaoks autorizeUserForScopes päringu jaoks kehtetu või ClearAuthorizationState päringu tundmatut veakoodi. See on teadaolev viga Apple'iga mis juhtub siis, kui SDK proovib võtmehoidjale juurde pääseda. Kuni Apple on vea kõrvaldanud, saate selle lahendada, lubades rakenduse võtmehoidja jagamise oma rakenduse sihtmärgi vahekaardil Võimalused. See viga mõjutab ainult simulaatoreid. Te saate testida tegelikes iOS10 seadmetes ilma mingit lahendust kasutamata.
Sisselogimine Amazoniga iOS-i versiooni 2.1.2 alustusjuhend - Laadi alla [optimeeritud]
Sisselogimine Amazoniga iOS-i versiooni 2.1.2 alustusjuhend - Laadi alla