Prisijunkite naudodami „Amazon“ darbo pradžios vadovą, skirtą „iOS“
Prisijunkite naudodami „Amazon“: „iOS“ 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 dukterinių bendrovių prekių ženklai. Visi kiti „Amazon“ nepriklausantys prekių ženklai yra jų atitinkamų savininkų nuosavybė.
Darbo pradžia naudojant „iOS“
Šiame vadove parodysime, kaip prie „iOS“ programos pridėti „Login with Amazon“. Baigę šį vadovą turėtumėte turėti veikiantį mygtuką Prisijungti naudodami „Amazon“ savo programoje, kad vartotojai galėtų prisijungti naudodami savo „Amazon“ kredencialus.
„Xcode“ diegimas
„IOS“ skirtą „Login with Amazon SDK“ teikia „Amazon“, kad galėtumėte pridėti „Login with Amazon“ prie savo „iOS“ programos. SDK skirtas naudoti su „Xcode“ kūrimo aplinka. SDK palaiko programas, veikiančias „iOS 7.0“ ir naujesnėse versijose, naudojančiose „ARMv7“, „ARMv7s“, „ARM64“, „i386“ ir „x86_64“.
„Xcode“ galite įdiegti iš „Mac App Store“. Norėdami gauti daugiau informacijos, žr „Xcode“: kas naujo svetainėje developer.apple.com.
Įdiegę „Xcode“ galite Įdiekite „iOS“ skirtą „Login with Amazon SDK“ ir Paleiskite Sample App, kaip aprašyta toliau.
Įdiekite „iOS“ skirtą „Login with Amazon SDK“
Prisijungimas naudojant „Amazon“ SDK, skirtas „iOS“, yra dviejų paketų. Pirmajame yra „iOS“ biblioteka ir patvirtinamoji dokumentacija. Antrame yra kaipample programa, leidžianti vartotojui prisijungti ir view jų proffile duomenis.
Jei dar neįdiegėte „Xcode“, žiūrėkite instrukcijas Įdiekite Xcode skyriuje aukščiau.
- Atsisiųsti Prisijunkite su „Amazon“ SDKForiOS.zip ir ištraukite files į standžiojo disko katalogą.
Turėtumėte pamatyti a Prisijunkite naudodami Amazon.framework kataloge. Čia yra „Login with Amazon“ biblioteka.
Viršutiniame užtrauktuko lygyje yra a Prisijunkite su Amazon.doc nustatyti katalogą. Čia yra API dokumentai. - Žr Įdiekite „Login with Amazon Library“ instrukcijas, kaip pridėti biblioteką prie „iOS“ projekto.
Kai įdiegsite „iOS“ prisijungimą prie „Amazon“, galite Sukurkite naują prisijungimą naudodami „Amazon“ projektą po to Registracija prisijungiant prie „Amazon“.
Paleiskite Sample App
Norėdami paleisti sample programą, atidarykite samp„Xcode“.
- Atsisiųsti SampleLoginWithAmazonAppForiOS.zip ir nukopijuokite
SampleLoginWithAmazonAppForiOS katalogą į aplanką Dokumentai. - Paleiskite „Xcode“. Jei pasirodys dialogo langas „Sveiki atvykę į„ Xcode “, spustelėkite Atidaryti kitą. Priešingu atveju pagrindiniame meniu spustelėkite File ir pasirinkite Atidaryti.
- Pasirinkite aplanką Dokumentai ir pasirinkite
SampleLoginWithAmazonAppForiOS/LoginWithAmazonSample/ Prisijunkite su Amazonample.xcodeproj. Spustelėkite Atidaryti. - ŠampDabar projektas turėtų būti įkeltas. Kai baigsite, pasirinkite Produktas iš pagrindinio meniu ir pasirinkite Bėk
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 „iOS“ programą prie tos paskyros.
Žr. Šias temas
- Užregistruokite savo prisijungimą naudodami „Amazon“ programą
- Pridėkite „iOS“ programą prie „Security Pro“.file
- „iOS Bundle ID“ ir API raktai
o Nustatykite „iOS“ programos paketo identifikatorių
o Gaukite „iOS“ API raktą
Užregistruokite savo prisijungimą naudodami „Amazon“ programą
- Eikite į https://login.amazon.com.
- Jei anksčiau prisiregistravote prisijungti prie „Amazon“, spustelėkite „App Console“. Priešingu atveju spustelėkite Registruotis.
Būsite nukreipti į „Seller Central“, kuris tvarko „Login with Amazon“ programos registraciją. Jei pirmą kartą naudojate „Seller Central“, jūsų bus paprašyta nustatyti „Seller Central“ sąskaitą. - Spustelėkite Užregistruokite naują paraišką. The Užregistruokite savo paraišką forma pasirodys:
a. Į savo paraiškos registravimo formą įveskite vardą 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 privatumo pranešimą URL už jūsų prašymą.
Privatumo pranešimas URL yra jūsų įmonės ar programos privatumo politikos vieta (pvzampčia, http: //www.example.com/privacy.html). Ši nuoroda vartotojams 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ėje. 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ą.
Jei skirtingos programos versijos turi skirtingus paketo ID, pvz., Vienos ar daugiau bandomųjų versijų ir gamybinės versijos, kiekvienai versijai reikalingas atskiras API raktas. Nuo „iOS“ nustatymai programos, spustelėkite Pridėti API raktą mygtuką, kad sukurtumėte papildomus programos raktus (po vieną kiekvienoje versijoje).
Pridėkite „iOS“ programą prie „Security Pro“.file
Išsaugoję pagrindinius programos nustatymus, galite pridėti konkrečių nustatymų websvetaines ir programas mobiliesiems, kurios naudos šį prisijungimą naudojant „Amazon“ paskyrą.
Norėdami užregistruoti „iOS“ programą, turite nurodyti programos projekto paketo identifikatorių. Prisijungę naudodami „Amazon“, naudosite paketo ID, kad sugeneruotumėte API raktą. API raktas suteiks jūsų programai prieigą prie „Login with Amazon“ autorizacijos paslaugos. Atlikite šiuos veiksmus, kad prie paskyros pridėtumėte „iOS“ programą:
- Programos ekrane spustelėkite „iOS“ nustatymai. Jei jau esate užregistravę „iOS“ programą, ieškokite Pridėti API raktą mygtuką „iOS“ nustatymai skyrių.
The „iOS“ programa Parodoma išsami informacija:
- Įveskite Etiketė „iOS“ programos. Tai neturi būti oficialus jūsų programos pavadinimas. Tai tiesiog identifikuoja šią konkrečią „iOS“ programą tarp programų ir websvetainės, registruotos prisijungus prie „Amazon“ programos.
- Įveskite savo Grupės ID. Tai turi atitikti „iOS“ projekto paketo identifikatorių. Norėdami nustatyti paketo identifikatorių, atidarykite projektą naudodami „Xcode“. Atidarykite projekto ypatybių sąrašą ( -Info.plist) „Project Navigator“. „Bundle“ identifikatorius yra viena iš sąrašo ypatybių.
- Spustelėkite Išsaugoti.
„iOS Bundle ID“ ir API raktai
„Bundle“ identifikatorius yra unikalus kiekvienai „iOS“ programai. Norėdami prisijungti naudodami „Amazon“, naudojate „Bundle ID“, kad sukurtumėte savo API raktą. API raktas leidžia „Login with Amazon“ autorizacijos tarnybai atpažinti jūsų programą.
Nustatykite „iOS“ programos paketo identifikatorių
- Atidarykite savo programos projektą naudodami „Xcode“.
- Atidarykite Informacija nuosavybės sąrašas projektui ( -Info.plist) esančiame „Project Navigator“.
- Rasti Grupės identifikatorius savybių sąraše.
Gaukite „iOS“ API raktą
Užregistravę „iOS“ versiją ir pateikę „Bundle ID“, galite gauti API raktą iš „Login with Amazon“ programos registracijos puslapio. Tą API raktą turėsite įdėti į projekto nuosavybės sąrašą. Kol to nepadarysite, programai nebus suteikta teisė bendrauti su „Login with Amazon“ autorizacijos tarnyba.
1. Eikite į https://login.amazon.com.
2. Spustelėkite „App Console“.
3. Į Programėlės laukelyje spustelėkite savo programą.
4. Suraskite savo „iOS“ programą skiltyje „iOS“ nustatymai skyrius. Jei dar neregistravote „iOS“ programos, žr Pridėkite „iOS“ programą prie „Security Pro“.file.
5. Spustelėkite Generuoti API rakto vertę. Iššokančiame lange bus rodomas jūsų API raktas. Norėdami nukopijuoti raktą, spustelėkite Pasirinkite Viskas norėdami pasirinkti visą klavišą.
Pastaba: API rakto vertė iš dalies priklauso nuo jos sugeneravimo laiko. Taigi paskesnė jūsų sukurta API rakto vertė (-ės) gali skirtis nuo originalo. Galite naudoti bet kurią iš šių API raktinių verčių savo programoje, nes jos visos galioja.
6. Žr Pridėkite API raktą prie savo programos nuosavybės sąrašo instrukcijas, kaip pridėti API raktą prie „iOS“ programos
Prisijungimo su „Amazon“ projektu sukūrimas
Šiame skyriuje sužinosite, kaip sukurti naują „Login with Amazon“ Xcode projektą ir sukonfigūruoti projektą.
Peržiūrėkite šias temas:
- Sukurkite naują prisijungimą naudodami „Amazon“ projektą
- Įdiekite „Login with Amazon Library“
- Pridėkite API raktą prie savo programos nuosavybės sąrašo
- Pridėti a URL Programos nuosavybės sąrašo schema
- Pridėkite „Amazon“ programos transporto saugos saugos išimtį prie savo programos Nekilnojamojo turto sąrašas
PASTABA: Šis naujas žingsnis šiuo metu reikalingas kuriant „iOS 9 SDK“ - Pridėkite prisijungimą naudodami „Amazon“ mygtuką prie savo programos
Sukurkite naują prisijungimą naudodami „Amazon“ projektą
Jei dar neturite programos „Login with Amazon“ naudojimo, vadovaukitės toliau pateiktomis instrukcijomis, kad sukurtumėte. Jei turite esamą programą, pereikite prie žemiau esančio skyriaus „Įdiegti prisijungimą naudojant„ Amazon “biblioteką“.
- Paleisti Xcode.
- Jei jums pateikiamas a Sveiki atvykę į „Xcode“ dialogo langą, pasirinkite Sukurkite naują „Xcode“ projektą.
Priešingu atveju iš File meniu, pasirinkite Nauja ir Projektas. - Pasirinkite norimo sukurti projekto tipą ir spustelėkite Kitas.
- Įveskite a Produkto pavadinimas ir a Įmonės identifikatorius. Atkreipkite dėmesį į jūsų Rinkinio identifikatoriusir spustelėkite Kitas.
- Pasirinkite vietą, kurioje norite laikyti savo projektą, ir spustelėkite Sukurti.
Dabar turėsite naują projektą, kurį galėsite naudoti norėdami paskambinti „Login with Amazon“.
Įdiekite „Login with Amazon Library“
Jei dar neatsisiųsite „iOS“ prisijungimo prie „Amazon“ SDK, žr Įdiekite „iOS“ skirtą „Login with Amazon SDK“.
Prisijungimo prie „Amazon“ projektas turi susieti Prisijunkite naudodami Amazon.framework ir Saugumas.rėmas bibliotekos. Taip pat turėsite sukonfigūruoti sistemos paieškos kelią, kad rastumėte „Login with Amazon“ antraštes
- Kai jūsų projektas atidarytas „Xcode“, pasirinkite Karkasai aplanką, spustelėkite File iš pagrindinio meniu ir pasirinkite Pridėti Files į „Projektas“.
- Dialogo lange pasirinkite Prisijunkite naudodami Amazon.framework ir spustelėkite Pridėti.
Jei naudojote „Login with Amazon 1.0“ biblioteką, iš „Frameworks“ aplanko ištrinkite „login-with-amazon sdk“ katalogą ir „login-with-amazon-sdk.a“. Spustelėkite Redaguoti iš pagrindinio meniu ir pasirinkite Ištrinti. - Pasirinkite savo projekto pavadinimą „Project Navigator“.
The Projekto redaktorius bus rodomas Xcode darbo srities redaktoriaus srityje. - Spustelėkite projekto pavadinimą Tikslai, ir pasirinkite Sukūrimo etapai. Išskleiskite „Link Binary with Libraries“ ir spustelėkite pliuso ženklą, kad pridėtumėte biblioteką.
- Paieškos laukelyje įveskite Saugumas.rėmas. Pasirinkite Saugumas.karkasas ir spustelėkite Pridėti.
- Paieškos laukelyje įveskite „SafariServices.framework“. Pasirinkite „SafariServices.framework“ ir spustelėkite Pridėti.
- Paieškos laukelyje įveskite „CoreGraphics.framework“. Pasirinkite „CoreGraphics.framework“ ir spustelėkite Pridėti
- Pasirinkite Sukūrimo nustatymai. Spustelėkite Viskas view visus nustatymus.
- Pagal Paieškos keliuose, įsitikinkite, kad Prisijunkite naudodami Amazon.framework katalogas yra Pagrindų paieškos keliai.
Pavyzdžiui,ampLe:
Jei naudojote „Login with Amazon 1.0“ biblioteką, galite pašalinti visas nuorodas į 1.0 bibliotekos kelią Antraštės paieškos keliai or Bibliotekų paieškos keliai. - Pagrindiniame meniu spustelėkite Produktas ir pasirinkite Sukurti. Versija turėtų būti sėkmingai baigta.
Prieš kurdami savo projektą, jei naudojote „Login with Amazon 1.0“ biblioteką, pakeiskite #import „AIMobileLib.h“, #import „AIAuthenticationDelegate.h“, or #importuoti „AIError.h“ jūsų šaltinyje files su #importuoti
.
Prisijunkite su Amazon.h apima visas „Login with Amazon“ antraštes vienu metu.
Pridėkite API raktą prie savo programos nuosavybės sąrašo
Kai registruojate „iOS“ programą prisijungdami prie „Amazon“, jums priskiriamas API raktas. Tai yra identifikatorius, kurį „Amazon Mobile Library“ naudos jūsų programai identifikuoti „Login with Amazon“ autorizacijos tarnybai. „Amazon Mobile Library“ šią vertę vykdymo metu įkelia iš API rakto ypatybės vertės, esančios jūsų programos informacijos nuosavybės sąraše.
- Kai jūsų projektas yra atidarytas, pasirinkite Palaikymas Files aplanką, tada pasirinkite -Info.plist file (kur yra jūsų projekto pavadinimas). Tai turėtų atidaryti nuosavybės sąrašą redaguoti:
- Įsitikinkite, kad nė vienas iš įrašų nebuvo pasirinktas. Tada pagrindiniame meniu spustelėkite redaktorius, ir Pridėti daiktą. Įeikite APIKey ir paspauskite Įeikite.
- Dukart spustelėkite po Vertė stulpelį, kad pridėtumėte vertę. Įklijuokite API raktą kaip vertę.
Pridėti a URL Programos nuosavybės sąrašo schema
Kai vartotojas prisijungs, jam bus pateiktas „Amazon“ prisijungimo puslapis. Norėdami, kad programa gautų patvirtinimą apie prisijungimą, turite pridėti URL schema taip, kad web puslapis gali nukreipti atgal į jūsų programą. The URL schema turi būti deklaruota kaip amzn- (pvzample, amzncom.example.app). Norėdami gauti daugiau informacijos, žr Naudojant URL Schemos, skirtos bendrauti su programomis svetainėje developer.apple.com.
- Kai jūsų projektas yra atidarytas, pasirinkite Palaikymas Files aplanką, tada pasirinkite -Info.plist file (kur yra jūsų projekto pavadinimas). Tai turėtų atidaryti nuosavybės sąrašą redaguoti:
- Įsitikinkite, kad nė vienas iš įrašų nebuvo pasirinktas. Tada pagrindiniame meniu spustelėkite redaktorius, ir Pridėti daiktą. Įveskite arba pasirinkite URL tipai ir paspauskite Įeikite.
- Išskleisti URL tipai atskleisti Prekė 0. Pasirinkite Prekė 0 ir pagrindiniame meniu spustelėkite Redaktorius ir Pridėti elementą. Įveskite arba pasirinkite URL Identifikatorius ir paspauskite Įeikite.
- Pasirinkite 0 punktas pagal URL Identifikatorius ir dukart spustelėkite stulpelyje Vertė, kad pridėtumėte vertę. Vertė yra jūsų paketo ID. Nuosavybės sąraše savo paketo ID galite rasti kaip paketo identifikatorių.
- Pasirinkite 0 punktas pagal URL tipai ir pagrindiniame meniu spustelėkite redaktorius ir Pridėti daiktą. Įveskite arba pasirinkite URL Schemos ir paspauskite Enter.
- Pasirinkite 0 punktas pagal URL Schemos ir dukart spustelėkite po Vertė stulpelyje pridėti a vertė. Vertė yra jūsų grupės ID su amzn- iš anksto (pvzample, amzn com.example.app). Savo paketo ID galite rasti kaip Grupės identifikatorius turto sąraše.
Pridėkite „Amazon“ programos transporto saugos saugos išimtį prie savo programos
Nekilnojamojo turto sąrašas
Pradedant nuo „iOS 9“, „Apple“ įdiegia „App Transport Security“ (ATS), kad užtikrintų saugų ryšį tarp programos ir web paslaugos. Galutinis taškas (api.amazon.com), su kuriuo prisijungimas prie Amazon SDK sąveikauja, kad keistųsi informacija, dar neatitinka ATS. Pridėkite api.amazon.com išimtį, kad įgalintumėte sklandų ryšį tarp SDK ir „Amazon“ serverio.
- Kai jūsų projektas yra atidarytas, pasirinkite Palaikymas Files aplanką, tada pasirinkite -Info.plist file (kur yra jūsų projekto pavadinimas). Tai turėtų atidaryti nuosavybės sąrašą, kuriame numatoma:
- Įsitikinkite, kad nė vienas iš įrašų nėra. Tada pagrindiniame meniu spustelėkite redaktorius, ir Pridėti elementą. Įveskite arba pasirinkite NSAppTransportSecurity ir paspauskite Įeikite.
- Išskleisti NSAppTransportSecurity ir pagrindiniame meniu spustelėkite redaktorius ir Pridėti elementą. Įveskite arba pasirinkite NSExceptionDomains ir paspauskite Įeikite.
- Išskleisti NSExceptionDomains ir pagrindiniame meniu spustelėkite redaktorius ir Pridėti elementą. Įveskite amazon.com ir paspauskite Įeikite.
- Išskleisti amazon.com ir pagrindiniame meniu spustelėkite redaktorius ir Pridėti elementą.Įveskite NSExceptionRequiresForwardSecrecy ir paspauskite Įeikite.
- Pasirinkite NSExceptionRequiresForwardSecrecy ir dukart spustelėkite po Vertė stulpelį, jei norite pridėti a Tipas of Būlio ir a Vertė of NE.
Prisijungimas naudojant „Amazon“ suteikia kelis standartinius mygtukus, kuriuos galite naudoti norėdami paraginti vartotojus prisijungti iš jūsų programos. Šiame skyriuje pateikiami veiksmai, kaip atsisiųsti oficialų prisijungimą naudojant „Amazon“ vaizdą ir susieti jį su „iOS“ UIB mygtuku.
- Pridėkite standartinį UIB mygtuką prie savo programos.
Pamokas ir informaciją, kaip pridėti mygtuką prie programos, žr Kurimas ir konfigūravimas View Objektai ir Pradėkite kurti iOS programas šiandien svetainėje developer.apple.com. - Pridėkite Palieskite viduje metodo pavadinimo mygtuko įvykis onLoginButtonClicked. Kol kas palikite tuščią diegimą. Kuriant ir Konfigūruojama View Objektai ir Pradėkite kurti iOS programas šiandien Apple.com dokumentuose yra mygtuko įvykio pridėjimo veiksmai.
- Pasirinkite mygtuko vaizdą.
Pasitarkite su „Amazon“ prisijungimu Stiliaus gairės mygtukų, kuriuos galite naudoti savo programoje, sąrašą. Atsisiųskite LWA_for_iOS.zip file. 1x ir 2xkataloguose raskite pageidaujamą mygtuką ir ištraukite juos iš ZIP. Jei norite rodyti mygtuką pasirinktoje būsenoje, ištraukite _spaustą mygtuko versiją. - Pridėkite vaizdus prie savo projekto.
a. „Xcode“, kai jūsų projektas yra įkeltas, spustelėkite File iš pagrindinio meniu ir pasirinkite Pridėti Files į „projektą“.
b. Dialogo lange pasirinkite mygtuko vaizdą file(s), kuriuos atsisiuntėte ir spustelėkite Pridėti.
c. Dabar mygtukai turėtų būti projekte, esančiame jūsų projekto kataloge. Perkelkite juos į palaikomąjį Filesfolder. - Pridėkite vaizdą prie savo mygtuko.
Norėdami įgalinti mygtuko atvaizdą, galite modifikuoti mygtuko atributą arba naudoti setImage: forState metodas UIB mygtukas objektas. Atlikite šiuos veiksmus, kad pakeistumėte mygtuko vaizdo atributą:
a. Atidarykite savo programos siužetinę schemą.
b. Pasirinkite savo siužetinės linijos mygtuką spustelėdami jį arba pasirinkdami jį iš View Valdiklis Scenos medis.
c. Į Komunalinės paslaugos langą, atidarykite Atributų inspektorius.
d. Atributų inspektoriaus viršuje nustatykite mygtuko tipą į Sistema.
e. Antroje nustatymų grupėje valstybės nustatymui pasirinkite Numatytasis.
f. Antroje nustatymų grupėje išskleidžiamajame nustatymas Vaizdas.
g. Pasirinkite mygtuką „Prisijunkite su„ Amazon “, kurį pridėjote prie projekto. Nesirinkite 2x versijos: ji bus automatiškai įkelta į didelio tankio ekranų (tinklainės) įrenginius.
h. Nustatykite tą patį vaizdą nustatymui „Fonas“.
i. Jei norite nurodyti paspaustą mygtuko versiją, būsenai „Config“ pasirinkite „Pasirinkta“ ir nustatykite „Vaizdas“ į savo mygtuko _Paspausta versiją.
j. Siužetinėje schemoje, jei reikia, sureguliuokite mygtuko dydį, kad tilptų vaizdas.
SDK naudojimas „iOS“ API
Šiame skyriuje pridėsite kodą prie savo projekto, kad prisijungtumėte prie vartotojo su „Login with Amazon“.
Peržiūrėkite šias temas:
- Valdykite prisijungimo mygtuką ir gaukite „Pro“file Duomenys
- Patikrinkite, ar Vartotojo prisijungimas paleidžiamas
- Išvalykite įgaliojimo būseną ir atsijunkite vartotoją
Šiame skyriuje paaiškinta, kaip paskambinti authorizeUserForScopes: deleguoti: ir getProfile: API prisijungti prie vartotojo ir gauti jo profesionalųfile duomenis. Tai apima sukūrimą onLoginButtonClicked: klausytojas savo prisijungimo mygtukui „Amazon“.
- Pridėkite „Login with Amazon“ prie savo „iOS“ projekto. Žr. „Įdiegti prisijungimą naudojant„ Amazon “biblioteką“.
- Importuokite „Login with Amazon API“ į savo šaltinį file.
Norėdami importuoti „Login with Amazon API“, pridėkite šiuos duomenis #importmentements savo šaltiniui file:#import - Sukurti „AMZNAuthorizeUserDelegateclass“ įgyvendinti
AIAautenticationDelegate.
Kada authorizeUserForScopes: deleguoti: baigs, jis paskambins requestDidSucceed: or requestDidFail: metodas objektui, kuris įgyvendina AIAautenticationDelegate protokolas.@interface AMZNAuthorizeUserDelegate: NSObject @galas Daugiau informacijos žr Darbas su protokolais svetainėje developer.apple.com.
- Skambinti authorizeUserForScopes: deleguoti: in onLoginButtonClicked.
Jei atlikote nurodytus veiksmus Pridėkite prisijungimą naudodami „Amazon“ mygtuką prie savo programos, turėtumėte turėti onLoginButtonClicked: metodas susietas su „Login with Amazon“ mygtuku. Taikydami šį metodą, paskambinkite authorizeUserForScopes: deleguoti: į paraginkite vartotoją prisijungti ir suteikti prieigą jūsų programai.
Šis metodas leis vartotojui prisijungti ir sutikti su prašoma informacija vienu iš šių būdų:
1.) Persijungia į web view saugiame kontekste (jei įrenginyje įdiegta „Amazon Shopping“ programa)
2.) Perjungiama į „Safari“ View Valdiklis („iOS 9“ ir naujesnėse versijose)
3.) Perjungiama į sistemos naršyklę („iOS 8“ ir naujesnėse versijose)
Pirmosios parinkties saugus kontekstas pasiekiamas, kai įrenginyje yra įdiegta „Amazon Shopping“ programa. Jei vartotojas jau yra prisijungęs prie „Amazon Shopping“ programos, prisijungimo puslapis praleidžiamas, todėl Vienkartinis prisijungimas (SSO) patirtį.Kai jūsų programa yra įgaliota, ji turi teisę naudoti vieną ar daugiau duomenų rinkinių, vadinamų taikymo sritimis. Pirmasis parametras yra apimčių masyvas, apimantis vartotojo duomenis, kurių prašote „Login with Amazon“. Pirmą kartą vartotojui prisijungus prie jūsų programos, jam bus pateiktas jūsų prašomų ir patvirtinimo prašomų duomenų sąrašas. Prisijungimas naudojant „Amazon“ šiuo metu palaiko tris sritis: profile, 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.
Antrasis parametras į authorizeUserForScopes: deleguoti: yra objektas, įgyvendinantis AIAautentifikavimasDelegateprotokol, šiuo atveju AMZNAuthorizeUserDelegate klasė.- (IBAction) onLogInButtonClicked: (id) siuntėjas {
// Skambinkite į SDK, kad gautumėte saugios prieigos prieigos raktą
// vartotojui.
// Atlikdami pirmąjį skambutį, galite nurodyti minimalų pagrindinį
// reikia taikymo srities.// Prašoma abiejų taikymo srities dabartiniam vartotojui.
NSArray * requestScopes =
[NSArray masyvasWithObjects:@"profile”, @”pašto_kodas”, nulis];AMZNAuthorizeUserDelegate * delegate =
[AIMobileLib authorizeUserForScopes: requestScopes delegate: delegate];
[[AMZNAuthorizeUserDelegate paskirstymas] initWithParentController: self];Pridėkite savo delegato diegimo antraštę prie klasės skambučio
authorizeUserForScopes :. Pavyzdžiui,ampLe:#import „AMZNAuthorizeUserDelegate.h“ - Sukurti an AMZNGetProfileDeleguoti.
AMZNGetProfileDelegatas mūsų klasės pavadinimas, kuris įgyvendina
AIAautentifikavimasDelegateprotokol, ir apdoros getProfile: skambutis. Kaip authorizeUserForScopes:delegate:, getProfile: palaiko requestDidSucceed: ir requestDidFail: protokolo metodai. requestDidSucceed: gauna APIRrezultatas objektas su profile duomenis rezultato savybėje. requestDidFail: gauna AIE klaida objektas su informacija apie klaidą ypatybės klaida.
Norėdami sukurti delegatų klasę iš įprastos klasės deklaracijos, importuokite
AIAuthenticationDelegate.hand pridėkite protokolą prie deklaracijos savo klasės antraštėje file:#importuoti @interface AMZNGetProfileDelegatas: NSObject @end - Įgyvendinti requestDidSucceed: už tavo AMZNAuthorizeUserDelegate. In requestDidSucceed :, skambinti getProfile: atgauti klientą profile. getProfile:, patinka authorizeUserForScopes: delegate: naudoja protokolą AIAuthenticationDelegate.
- (void) requestDidSucceed: (APIResult *) apiResult {
// Jūsų kodas po to, kai vartotojas autorizuoja paraišką
// prašomos apimties.// Įkelti naują view valdiklis su vartotojo identifikavimo informacija
//, nes vartotojas dabar sėkmingai prisijungęs.AMZNGetProfileDelegatas* delegatas =
[[[AMZNGetProfilePerduoti aloc] initWithParentController:parentViewValdiklis] automatinis išleidimas];
[AIMobileLib getProfile:delegate];
}Pridėkite savo delegato diegimo antraštę prie klasės skambučio getProfile:. ForexampLe:
#importas „AMZNGetProfileDelegatas.h“ - Įgyvendinti requestDidSucceed: už tavo AMZNGetProfileDeleguoti.
requestDidSucceed: turi dvi pagrindinės užduotys: atgauti profesionaląfile duomenis iš APIRrezultatas, ir perduoti duomenis vartotojo sąsajai.
Norėdami atgauti profesionaląfile duomenis iš APIRrezultatas, pasiekti rezultato nuosavybę. Dėl getProfile:atsakymas, toje nuosavybėje bus naudotojo pro nuosavybės verčių žodynasfile savybių. Profesionalasfile savybės yra vardas, el. pašto adresas, ir user_id profesionalamsfile apimtis ir
pašto_kodas už pašto_kodas apimtis.- (void) requestDidSucceed: (APIResult *) apiResult {
// Gaukite profesionalųfile prašymas pavyko. Išpakuokite profesionaląfile informacija
// ir perduoti tėvui view valdiklisNSString * vardas = [(NSDictionary *) apiResult.rezultatas
objectForKey: @ „vardas“];
NSString * email = [(NSDictionary *) apiResult.result
objectForKey: @ „email“];
NSString * user_id = [(NSDictionary *) apiResult.result
objectForKey: @ ”user_id”];
NSString * postal_code = [(NSDictionary *) apiResult.result
objectForKey: @ ”postal_code”];// Perduoti duomenis į view valdiklis
} - Įgyvendinti requestDidFail: už tavo AMZNGetProfileDeleguoti.
requestDidFail: apima an API klaida objektas, kuriame yra išsami informacija apie klaidą. showLogInPageis hipotetinis metodas, kuris iš naujo nustatytų pagrindinį view valdiklį, kad būtų rodomas mygtukas Prisijungti naudojant „Amazon“.- (negaliojantis) requestDidFail: (APIError *) errorResponse {
// Gaukite Profile profesionalo užklausa nepavykofile apimtis.
// Jei klaidos kodas = kAIApplicationNotAuthorized,
// leisti vartotojui prisijungti dar kartą.
if (errorResponse.error.code == kAIApplicationNotAuthorized) {
// Rodyti vartotojo įgaliojimo mygtuką.
[tėvasViewValdiklis showLogInPage];
}
else {
// Tvarkykite kitas klaidas
[[[[UIAlertView aloc] initWithTitle:@”“ pranešimas:[NSString
stringWithFormat: @ “Klaida įvyko pranešime:% @“,
errorResponse.error.message] delegatas: nulis
cancelButtonTitle: @ ”OK” otherButtonTitles: nulis] autorelease] rodyti];
}
} - Įgyvendinti requestDidFail: už tavo AMZNAuthorizeUserDelegate.
- (negaliojantis) requestDidFail: (APIError *) errorResponse {
NSString * pranešimas = errorResponse.error.message;
// Jūsų kodas, kai autorizacija nepavyksta. [[[[UIAlertView aloc] initWithTitle:@”“ pranešimas:[NSString
stringWithFormat: @ “Nepavyko autorizuoti pranešimo:% @“, errorResponse.error.message] delegatas: nulis
cancelButtonTitle: @ ”OK” otherButtonTitles: nulis] autorelease] rodyti];
}10. Įgyvendinti programa: atidarykiteURL: sourceApplication: anotacija: jūsų projekto klasėje, kuri tvarko UIApplicationDelegate protokolas (pagal nutylėjimą tai bus „AppDelegateclass“ jūsų projekte). Kai programa pateikia „Amazon“ prisijungimo puslapį ir vartotojas užbaigia prisijungimą, ji peradresuos į programą naudodama URL Programuokite anksčiau užregistruotą programą. Tas peradresavimas perduodamas programa: atidarykiteURL: sourceApplication: anotacija :, kuris grįžta TAIP jei URL buvo sėkmingai tvarkoma. rankenaAtidarykiteURL: sourceApplication: yra SDK bibliotekos funkcija, kuri apdoros prisijungimą naudojant „Amazon“ peradresavimą URLtau. Jei rankenaAtidarykiteURL: sourceApplication: grąžina TAIP, tada URL buvo tvarkoma.
- (BOOL) programa: (UIApplication *) programa
atidarytiURL: (NSURL *)url
sourceApplication: (NSString *) sourceApplication
anotacija: (id) anotacija
{
// Perduokite url į SDK išanalizuoti prieigos teisės kodą // iš url.
BOOL isValidRedirectSignInURL =
[AIMobileLib rankenaAtidarytiURL:url
sourceAppliation: rūgštus ceApplicati on);
jei (! isValidRedirect Si gnlnURL)
grąžinti NE;
// Programa taip pat gali norėti el url grąžinti TAIP;
}PASTABA: Šis metodas yra nebenaudojamas „iOS 9“, tačiau turėtų būti įtrauktas į jūsų projektą, kad palaikytų senesnių platformų naudotojų palaikymą. Norėdami gauti daugiau informacijos apie programa: atidarykiteURL: sourceApplication: anotacija :, žr UIApplicationDelegate Protocol nuoroda svetainėje developer.apple.com.
Patikrinkite, ar Vartotojo prisijungimas paleidžiamas
Jei vartotojas prisijungia prie jūsų programos, ją uždaro ir paleidžia iš naujo, programa vis tiek turi teisę gauti duomenis. Vartotojas neatsijungia automatiškai. Paleisdami galite parodyti vartotoją kaip prisijungusį, jei jūsų programa vis dar yra įgaliota. Šiame skyriuje paaiškinama, kaip naudoti
getAccessTokenForScopes: withOverrideParams: delegate: norėdami sužinoti, ar programa vis dar yra įgaliota.
- Sukurti an „AMZNGetAccessTokenDelegate“ klasė. „AMZNGetAccessTokenDelegateimplements“ į AIAautenticationDelegate protokolą ir apdoros
getAccessTokenForScopes: withOverrideParams: delegate: skambinti. AIAautenticationDelegate yra du metodai, requestDidSucceed: ir requestDidFail :. requestDidSucceed: gauna APIRrezultatas objektas su simboliniais duomenimis, o requestDidFail: gauna API klaida objektas su informacija apie klaidą.#import @interface AMZNGetAccessTokenDelegate: NSObject
@pabaiga
Pridėkite savo delegato diegimo antraštę prie klasės skambučio
getAccessTokenForScopes: withOverrideParams: delegate :. ForexampLe:#import „AMZNGetAccessTokenDelegate.h“ - Paleidę programą skambinkite
getAccessTokenForScopes: withOverrideParams: delegate: norėdami sužinoti, ar programa vis dar yra įgaliota. getAccessTokenForScopes: withOverrideParams: delegate: nuskaito neapdorotą prieigos prieigos raktą, kurį „Login with Amazon“ naudoja norėdami pasiekti kliento profesionaląfile. Jei metodas pasiteisins, programa vis tiek autorizuota ir skambinama getProfile: turėtų pasisekti. getAccessTokenForScopes: withOverrideParams: delegate: naudoja AIAautenticationDelegate protokolą taip pat, kaip ir authorizeUserForScopes: deleguoti :. Perduokite objektą, įgyvendinantį protokolą kaip delegato parametrą.- (negaliojantis) checkIsUserSignedIn {
AMZNGetAccessTokenDelegate * delegate =
[[[AMZNGetAccessTokenDelegate alloc] initWithParentController:self] autorlease];
NSArray * requestScopes =
[NSArray masyvasWithObjects:@"profile”, @”pašto_kodas”, nulis]; [AIMobileLib getAccessTokenForScopes:requestScopes withOverrideParams:nil delegate:delegate];
} - Įgyvendinti requestDidSucceed: ant tavo „AMZNGetAccessTokenDelegate“. requestDidSucceed: turi vieną užduotį: paskambinti getProfile:. Šis buvęsampskambina getProfile: naudojant tą patį klausytoją, kurį deklaravote ankstesniame skyriuje (žr. 6–8 veiksmus).
#importas „AMZNGetProfileDelegatas.h“
#import- (void) requestDidSucceed: (APIResult *) apiResult {
// Čia yra jūsų kodas, skirtas naudoti prieigos raktą.// Kadangi programa turi mūsų taikymo srities įgaliojimą, mes galime
[AIMobileLib getProfile:delegate];
// gauti vartotojo profile.
AMZNGetProfileDelegate* delegate = [[[AMZNGetProfilePerduoti aloc] initWithParentController:parentViewValdiklis] automatinis išleidimas];
} - Įgyvendinti requestDidFail: ant tavo „AMZNGetAccessTokenDelegate“.
requestDidFail: apima an API klaida objektas, kuriame yra išsami informacija apie klaidą. Jei gaunate klaidą, galite iš naujo nustatyti pagrindinį view valdiklį, kad būtų rodomas mygtukas Prisijungti naudojant „Amazon“.- (negaliojantis) requestDidFail: (APIError *) errorResponse {
// Jūsų kodas tvarkyti nepavyko gauti prieigos raktą.
// Jei klaidos kodas = kAIApplicationNotAuthorized, leiskite vartotojui
// vėl prisijungti.
if (errorResponse.error.code == kAIApplicationNotAuthorized) {
// Rodyti prisijungimą naudojant „Amazon“ mygtuką.
}
else {
// Tvarkykite kitas klaidas
[[[[UIAlertView aloc] initWithTitle:@”“ pranešimas:[NSString
stringWithFormat: @ “Įvyko klaida pranešime:% @“, errorResponse.error.message] delegate: nulis
cancelButtonTitle:@"OK" otherButtonTitles:nil] autorlease] show];
}
}
The ClearAuthorizationState: metodas išvalys vartotojo autorizacijos duomenis iš AIMobileLib vietinė duomenų saugykla. 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.
- Paskelbkite AMZN „LogoutDelegate“. Tai klasė, kuri įgyvendina
AIAautentifikavimasDelegateprotokol. Savo tikslais galime paveldėti klasę NSOobjektas:
#import @interface AMZNLogoutDelegate NSObject
@pabaiga
Pridėkite savo delegato diegimo antraštę prie klasės skambučio clearAuthorizationState :. Pavyzdžiui,ampLe:
#import „AMZNLogoutDelegate.h“ - Skambinti clearAuthorizationState :.
Kai vartotojas sėkmingai prisijungė, galite pateikti atsijungimo mechanizmą, kad jis galėtų išvalyti savo įgaliojimo duomenis. Jūsų mechanizmas gali būti hipersaitas arba meniu elementas, tačiau šiuo atveju pvzample sukurs a atsijungimasMygtukasSpustelėkite metodą atsijungimo mygtukui.- (IBAction) atsijungimo mygtukas Spustelėtas: (id) siuntėjas {
AMZNLogoutDelegate* delegate = [[[AMZNLogoutDelegate alloc] initWithParentController:self] autorlease]; [AIMobileLib clearAuthorizationState:delegate];
}Vienintelis parametras ClearAuthorizationState yra an AIAautenticationDelegate kad įgyvendina requestDidSucceed: ir requestDidFail :.
- Įgyvendinti requestDidSucceed :. Šis metodas bus vadinamas, kai bus išvalyta vartotojo informacija. Tada turėtumėte juos parodyti kaip atsijungusius.
- (void) requestDidSucceed: (APIResult *) apiResult {
// Jūsų papildoma logika po vartotojo įgaliojimo
// būsena išvalyta.
[[[UIAlertView alloc] initWithTitle:@”” pranešimas:@”Vartotojas atsijungė.
delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil] show];
} - Įgyvendinti requestDidFail :. Šis metodas bus vadinamas, jei dėl kokių nors priežasčių vartotojo informacijos iš talpyklos nepavyks išvalyti. Tokiu atveju neturėtumėte jų rodyti kaip atsijungusių.
- (negaliojantis) requestDidFail: (APIError *) errorResponse {
// Nepavyko išvalyti papildomos logikos po SDK
// leidimo būsena. [[[[UIAlertView aloc] initWithTitle:@”“ pranešimas:[NSString
stringWithFormat: @ "Vartotojo atsijungimas nepavyko su pranešimu:% @",
errorResponse.error.message] delegatas: nulis
cancelButtonTitle:@"OK" otherButtonTitles:nil] autorlease] show];
}
Išbandykite savo integraciją
Paleiskite programą „iOS“ įrenginyje ar treniruoklyje ir patvirtinkite, kad galite prisijungti naudodami „Amazon.com“ kredencialus.
Pastaba: Kai bandote „iOS10“ modeliuokliuose, galite pamatyti klaidos pranešimą APIKey programai netinkamas „authorizeUserForScopes“ užklausai arba nežinomą klaidos kodą „clearAuthorizationState“ užklausai. Tai yra žinoma „Apple“ klaida kuris atsiranda, kai SDK bando pasiekti raktų pakabą. Kol „Apple“ nepašalins klaidos, galite ją išspręsti įgalindami savo programos „Keychain Sharing“ programos taikomųjų programų skirtuke. Ši klaida veikia tik treniruoklius. Galite išbandyti realiuose „iOS10“ įrenginiuose nenaudodami jokio sprendimo būdo.
Prisijunkite naudodami „Amazon“ darbo pradžios vadovą, skirtą „iOS“ 2.1.2 versijai - Atsisiųsti [optimizuota]
Prisijunkite naudodami „Amazon“ darbo pradžios vadovą, skirtą „iOS“ 2.1.2 versijai - Atsisiųsti