Најавете се со Водич за започнување со Амазон за iOS
Најавете се со Амазон: Водич за почеток за iOS
Авторски права © 2016 Amazon.com, Inc. или нејзините филијали. Сите права се задржани.
Амазон и логото на Амазон се трговски марки на Amazon.com, Inc. или нејзините филијали. Сите други трговски марки кои не се во сопственост на Амазон се сопственост на нивните сопственици.
Започнување за iOS
Во овој водич ќе ви покажеме како да додадете Пријавете се со Амазон во вашата апликација за iOS. По завршувањето на овој водич, треба да имате работно копче „Пријави се со Амазон“ во вашата апликација за да им дозволите на корисниците да се најавуваат со нивните квалификации на „Амазон“
Инсталирање на Xcode
Најавувањето со Амазон SDK за iOS е обезбедено од Амазон за да ви помогне да додадете најавување со Амазон во вашата апликација за iOS. SDK е наменет да се користи со опкружувањето за развој на Xcode. SDK поддржува апликации што работат на iOS 7.0 и подоцна користејќи ARMv7, ARMv7s, ARM64, i386 иx86_64.
Можете да инсталирате Xcode од продавницата за апликации Mac. За повеќе информации, видете Xcode: Што има ново на developer.apple.com.
Откако ќе се инсталира Xcode, можете Инсталирајте го најавувањето со Amazon SDK за iOS и Стартувај го Sample Апликација, како што е опишано подолу.
Инсталирајте го најавувањето со Amazon SDK за iOS
Пријавувањето со Amazon SDK за iOS доаѓа во два пакета. Првиот содржи библиотека за iOS и придружна документација. Вториот содржи какоample апликација која му овозможува на корисникот да се логира и view нивниот проfile податоци.
Ако сè уште не сте го инсталирале Xcode, видете ги упатствата во Инсталирајте Xcode дел погоре.
- Преземи Најавете се соAmazonSDKForiOS.zip и извлечете го files до директориумот на вашиот хард диск.
Треба да видите а НајаваСо Амазон.рамковна директориум. Ова ја содржи библиотеката за најавување со Амазон.
На горното ниво на патентот е а Најавете се соАмазон.doc постави директориум. Ова ја содржи документацијата на API. - Види Инсталирајте ја најавата со библиотеката на Амазон за упатства како да ја додадете библиотеката во проект за iOS.
Кога ќе се инсталира најавување со Амазон SDK за iOS, можете Создадете ново најавување со Амазон проект после Регистрација со најавување со Амазон.
Стартувај го Sample Апликација
За извршување на сample апликација, отворете го сample во Xcode.
- Преземи SampleLoginWithAmazonAppForiOS.zip и копирајте го
Sampдиректориумот leLoginWithAmazonAppForiOS во вашата папка Документи. - Започнете Xcode. Ако се појави дијалогот Добредојдовте во Xcode, кликнете Отвори други. Инаку, од главното мени, кликнете File и изберете Отвори.
- Изберете ја папката Документи и изберете
SampleLoginWithAmazonAppForiOS/Најавете се соAmazonSample/ Најавете се соAmazonSampле.xcodeproj. Кликнете Отвори. - С.ampпроектот сега треба да се вчита. Кога ќе заврши, изберете Производ од главното мени и изберете Трчај
Регистрација со најавување со Амазон
Пред да можете да користите Најавување со Амазон на a webсајт или во мобилна апликација, мора да регистрирате апликација со Најавете се со Амазон. Вашата апликација за најавување со Амазон е регистрација што содржи основни информации за вашиот бизнис и информации за секој од нив webстраница или мобилна апликација што ја креирате што поддржува најавување со Amazon. Овие деловни информации им се прикажуваат на корисниците секој пат кога тие користат најавување со Амазон на вашиот webстраница или мобилна апликација. Корисниците ќе го видат името на вашата апликација, вашето лого и врска до вашата политика за приватност. Овие чекори покажуваат како да регистрирате најава со апликацијата Амазон и да додадете апликација за iOS на таа сметка.
Погледнете ги следниве теми
- Регистрирајте се за најавување со апликацијата Амазон
- Додајте апликација за iOS на Security Profile
- ID-пакет iOS и клучеви од API
o Одредете идентификатор на пакет за апликација за iOS
o Вратете го клучот за iOS API
Регистрирајте се за најавување со апликацијата Амазон
- Одете на https://login.amazon.com.
- Ако претходно сте се пријавиле за најавување со Амазон, кликнете Конзола за апликации. Инаку, кликнете Пријавете се.
Е бидете пренасочени кон продавачот Централ, кој се справува со регистрација на апликации за најавување со Амазон. Ако ова е прв пат да го користите продавачот Централ, од вас ќе биде побарано да поставите сметка на продавачот. - Кликнете Регистрирајте нова апликација. На Регистрирајте ја вашата апликација формата ќе се појави:
a. Во формуларот Регистрирај ја твојата апликација, внесете име и а Опис за вашата апликација.
На Име е името што се прикажува на екранот за согласност кога корисниците се согласуваат да споделат информации со вашата апликација. Ова име се однесува на Android, iOS и webверзии на страницата на вашата апликација.
b. Внесете известување за приватност URL за вашата апликација.
Известување за приватност URL е локацијата на политиката за приватност на вашата компанија или апликација (на прample, http: //www.example.com/privacy.html). Оваа врска се прикажува на корисниците на екранот за согласност.
c. Ако сакате да додадете а Слика на логото за вашата апликација, кликнете Прелистајте и лоцирајте ја применливата слика.
Ова лого се прикажува на екранот за најавување и согласност за да го претставува вашиот бизнис или webсајт. Логото ќе се намали до 50 пиксели во висина ако е повисоко од 50 пиксели; нема ограничување на ширината на логото. - Кликнете Зачувај. Твојот сampрегистрацијата треба да изгледа слично на ова:
Откако ќе се зачуваат основните поставки на вашата апликација, можете да додадете поставки за одредени webсајтови и мобилни апликации што ќе го користат ова Пријавување со сметка на Амазон.
Ако различни верзии на вашата апликација имаат различни ID-пакети, како на пример за една или повеќе верзии за тестирање и производна верзија, за секоја верзија е потребен свој API-клуч. Од Поставки за iOS на вашата апликација, кликнете на Додадете клуч API копче за да креирате дополнителни клучеви за вашата апликација (едно по верзија).
Додајте апликација за iOS на Security Profile
Откако ќе се зачуваат основните поставки на вашата апликација, можете да додадете поставки за одредени webсајтови и мобилни апликации што ќе го користат ова Пријавување со сметка на Амазон.
За да регистрирате апликација за iOS, треба да го наведете идентификаторот на пакетот за проектот на апликацијата. Пријавување со Амазон ќе го користи пакетот ID за да генерира API-клуч. АПИ-клучот ќе и овозможи пристап на вашата апликација до услугата за овластување Логирање со Амазон. Следете ги овие чекори за да додадете апликација iOS на вашата сметка:
- Од екранот со апликација, кликнете Поставки за iOS. Ако веќе имате регистрирано апликација за iOS, побарајте ја Додадете клуч API копчето во Поставки за iOS дел.
На iOS апликација Formе се појави формулар за детали:
- Внесете го Етикета на вашата апликација за iOS. Ова не мора да биде официјално име на вашата апликација. Едноставно ја идентификува оваа апликација за iOS меѓу апликациите и webстраници регистрирани на вашата најава со апликацијата Амазон.
- Внесете го вашиот Пакет ID. Ова мора да одговара на идентификаторот на пакетот на вашиот проект iOS. За да го одредите идентификаторот на пакетот, отворете го проектот во Xcode. Отворете го списокот со својства за проектот ( -Info.plist) во Проектен навигатор. Идентификаторот на пакетот е едно од својствата на списокот.
- Кликнете Зачувај.
ID-пакет iOS и клучеви од API
Идентификаторот на пакетот е единствен за секоја апликација за iOS. Пријавување со Амазон го користи ID на пакетот за да го конструира вашиот клуч API. АПИ клучот овозможува најавување со услугата за овластување на Амазон за препознавање на вашата апликација.
Одредете идентификатор на пакет за апликација за iOS
- Отворете го вашиот проект за апликации во Xcode.
- Отворете го Информативен список на имот за проектот ( -Info.plist) во Проектен навигатор.
- Најдете Идентификатор на пакет во списокот на својства.
Преземете го клучот за iOS API
Откако ќе регистрирате верзија на iOS и да дадете ID на пакет, можете да го добиете клучот API од страницата за регистрација за вашата апликација за најавување со Амазон. Треба да го ставите тој клуч API во списокот со својства на вашиот проект. Додека не го сторите тоа, апликацијата нема да има овластување да комуницира со услугата за авторизација на Логирање со Амазон.
1. Одете на https://login.amazon.com.
2. Кликнете Конзола за апликации.
3. Во Апликации поле, кликнете на вашата апликација.
4. Пронајдете ја вашата апликација за iOS под Поставки за iOS дел. Ако веќе не сте регистрирале апликација за iOS, видете Додајте апликација за iOS на Security Profile.
5. Кликнете Генерирајте клучна вредност на API. Прозорецот што се појавува ќе го прикаже вашиот API клуч. За да го копирате клучот, кликнете Изберете Сите за да го изберете целиот клуч.
Забелешка: Клучната вредност на API се заснова, делумно, на времето кога се генерира. Така, следните клучни вредности на API што ги генерирате може да се разликуваат од оригиналот. Може да користите која било од овие клучни вредности на API во вашата апликација, бидејќи сите тие се валидни.
6. Види Додадете го вашиот API клуч во списокот со својства на вашата апликација за упатства за додавање на API клучот во вашата апликација iOS
Создавање најава со Амазон проект
Во овој дел, ќе научите како да креирате нов проект Xcode за најавување со Амазон и да го конфигурирате проектот.
Погледнете ги следниве теми:
- Создадете ново најавување со Амазон проект
- Инсталирајте ја најавата со библиотеката на Амазон
- Додадете го вашиот API клуч во списокот со својства на вашата апликација
- Додадете а URL Шема на списокот со имот на вашата апликација
- Додадете Исклучок за безбедност за транспорт на апликации за Амазон во вашата апликација Имотен лист
ЗАБЕЛЕШКА: Овој нов чекор е моментално потребен кога се развива на iOS 9 SDK - Додадете најава со копчето Амазон во вашата апликација
Создадете ново најавување со Амазон проект
Ако сè уште немате проект за апликација за користење најава со Амазон, следете ги упатствата подолу за да креирате. Ако имате постоечка апликација, прескокнете на делот Инсталирајте го најавувањето со библиотеката со Амазон подолу.
- Стартување Xcode.
- Ако ви се претстави а Добредојдовте на Xcode дијалог, изберете Создадете нов проект Xcode.
Инаку, од File мени, изберете Ново и Проект. - Изберете го типот на проект што сакате да го креирате и кликнете Следно.
- Внесете a Име на производ и а Идентификатор на компанијата. Забележете го вашиот Идентификатор на пакет, и кликнете Следно.
- Изберете локација во која ќе го зачувате вашиот проект и кликнете Креирај.
Сега ќе имате нов проект што можете да го користите за да повикате најава со Амазон.
Инсталирајте ја најавата со библиотеката на Амазон
Ако сеуште не сте ја преземале Пријавување со Амазон SDK за iOS, видете Инсталирајте го најавувањето со Amazon SDK за iOS.
Проектот за најавување со Амазон мора да го поврзе НајаваСо Амазон.рамковна и Безбедност.рамковна библиотеки. Исто така, ќе треба да ја конфигурирате патеката за пребарување рамки за да ги најдете најавите со заглавија на Амазон
- Со отворен проект во Xcode, изберете го Рамки папка, кликнете File од главното мени и потоа изберете Додадете Files до "проект".
- Во дијалогот, изберете НајаваСо Амазон.рамковна и кликнете Додади.
Ако сте ја користеле библиотеката „Пријави се со Амазон 1.0“, избришете го директориумот за најавување со-amazon sdk и најавување-со-amazon-sdk.a од папката Frameworks. Кликнете Уреди од главното мени и изберете Избриши. - Изберете го името на вашиот проект во Проектен навигатор.
На Уредувач на проектот ќе се појави во областа на уредникот на работниот простор на Xcode. - Кликнете на името на вашиот проект под Цели, и изберете Изградба на фази. Проширете ја врската Бинарна со библиотеки и кликнете на знакот плус за да додадете библиотека.
- Во полето за пребарување, внесете Безбедност.рамковна. Изберете Безбедност. Рамка и клик Додадете.
- Во полето за пребарување, внесете Рамка на SafariServices. Изберете Рамка на SafariServices и кликнете Додадете.
- Во полето за пребарување, внесете CoreGraphics.рамка. Изберете CoreGraphics.рамка и кликнете Додадете
- Изберете Изградба на поставкиНа Кликнете на Сите за да view сите поставки.
- Под Патеки за пребарување, осигурајте се дека НајаваСо Амазон.рамковна директориумот е во Рамки за пребарување на рамки.
За прampле:
Ако сте ја користеле библиотеката „Пријави се со Амазон 1.0“, можете да отстраните какви било препораки за патеката библиотека 1.0 во Патеки за пребарување заглавија or Патеки за пребарување библиотека. - Од главното мени, кликнете Производ и изберете Изградба. Изградбата треба да заврши успешно.
Пред да го изградите вашиот проект, ако сте ја користеле библиотеката Пријави се со Амазон 1.0, заменете ја # увоз „AIMobileLib.h“, # увоз „AIAuthenticationDelegate.h“, or #увоз „AIError.h“ во вашиот извор fileи со #увоз
.
Најавете се соАмазон.h ги вклучува сите наслови за најава со Амазон одеднаш.
Додадете го вашиот API клуч во списокот со својства на вашата апликација
Кога ја регистрирате вашата апликација за iOS со Пријави се со Амазон, ви е доделен клуч API. Ова е идентификатор што ќе го користи мобилната библиотека Амазон за да ја идентификува вашата апликација на услугата за овластување Логирање со Амазон. Амазонската мобилна библиотека ја вчитува оваа вредност при извршувањето од вредноста на клучот на API во списокот со информации на вашата апликација.
- Со отворен проект, изберете го Поддршка Files папка, а потоа изберете ја -Info.plist file (каде е името на вашиот проект). Ова треба да го отвори списокот со имот за уредување:
- Осигурете се дека ниту еден запис не е избран. Потоа, од главното мени, кликнете Уредник, и Додади ставка. Внесете APIKkey и притиснете Внесете.
- Кликнете двапати под Вредност колона за да додадете вредност. Залепете го вашиот клуч API како вредност.
Додадете а URL Шема на списокот со имот на вашата апликација
Кога корисникот ќе се најави, ќе им биде презентирана страница за најавување во Амазон. За да може вашата апликација да добие потврда за нивното најавување, мора да додадете А. URL шема така што на web страницата може да се пренасочи назад кон вашата апликација. На URL шемата мора да биде декларирана како амзн- (на прampле, amzncom.ексample.app) За повеќе информации, видете Користење на URL Шеми за комуникација со апликации на developer.apple.com.
- Со отворен проект, изберете го Поддршка Files папка, а потоа изберете ја -Info.plist file (каде е името на вашиот проект). Ова треба да го отвори списокот со имот за уредување:
- Осигурете се дека ниту еден запис не е избран. Потоа, од главното мени, кликнете Уредник, и Додади ставка. Внесете или изберете URL типови и притиснете Внесете.
- Прошири URL типови да се открие Ставка 0. Изберете Ставка 0 и, од главното мени, кликнете Уредувач и Додади ставка. Внесете или изберете URL Идентификатор и притиснете Внесете.
- Изберете Ставка 0 под URL Идентификатор и кликнете двапати под колоната Вредност за да додадете вредност. Вредноста е вашиот ID на пакетот. Може да го најдете вашиот ID на пакет наведен како идентификатор на пакет во списокот со имот.
- Изберете Ставка 0 под URL типови и, од главното мени, кликнете Уредник и Додади ставка. Внесете или изберете URL Шеми и притиснете Enter.
- Изберете Ставка 0 под URL Шеми и кликнете двапати под Вредност колона за додавање на вредност. Вредноста е вашиот ID пакет со амзн- претходно (за прampле, амзн ком.ексample.app). Може да го најдете вашиот ID на пакет наведен како Идентификатор на пакет во имотниот лист.
Додадете Исклучок за безбедност за транспорт на апликации за Амазон во вашата апликација
Имотен лист
Почнувајќи со iOS 9, Apple спроведува безбедност на транспорт на апликации (ATS) за безбедни врски помеѓу апликација и web услуги. Крајната точка (api.amazon.com) Влезот со Amazon SDK комуницира за размена на информации с doesn't уште не е во согласност со ATS. Додадете исклучок за api.amazon.com за да овозможите непречена комуникација помеѓу SDK и серверот Амазон.
- Со отворен проект, изберете го Поддршка Files папка, а потоа изберете ја -Info.plist file (каде е името на вашиот проект). Ова треба да го отвори предвидувањето на имотниот лист:
- Проверете дали никој од записите не е. Потоа, од главното мени, кликнете Уредник, и Додадете ставка. Внесете или изберете NSAppTransportSecurity и притиснете Внесете.
- Прошири NSAppTransportSecurity и, од главното мени, кликнете Уредник и Додадете ставка. Внесете или изберете NSExceptionDomains и притиснете Внесете.
- Прошири NSExceptionDomains и, од главното мени, кликнете Уредник и Додадете ставка. Внесете amazon.com и притиснете Внесете.
- Прошири amazon.com и, од главното мени, кликнете Уредник и Додадете ставка.Внесете НСЕИсклучокБирапредНа тајност и притиснете Внесете.
- Изберете НСЕИсклучокБирапредНа тајност и кликнете двапати под Вредност колона за да додадете Изберете a Тип of Булова и а Вредност of БР.
Пријавување со Амазон обезбедува неколку стандардни копчиња што можете да ги користите за да ги поттикнете корисниците да се најават од вашата апликација. Овој дел дава чекори за преземање на официјално најавување со слика на Амазон и спарување со iOS UIB копче.
- Додадете стандардно UIB копче во вашата апликација.
За упатства и информации за тоа како да додадете копче на апликација, видете Создавање и конфигурирање View Објекти и Започнете со развивање на апликации за iOS денес на developer.apple.com. - Додадете го Допрете го внатре настан за копчето до именуван метод наПријавете се на копчетоКликнато. Оставете ја имплементацијата празна засега. На Создавање и Конфигурирање View Објекти и Започнете со развивање на апликации за iOS денес документите на apple.com вклучуваат чекори за додавање настан со копче.
- Изберете слика на копче.
Консултирајте се со нашата најава со Амазон Упатства за стилот за список на копчиња што можете да ги користите во вашата апликација. Преземете копија од LWA_for_iOS.zip fileНа Најдете го претпочитаното копче и во 1x и во 2xdirectories и извлечете ги од zip. Извлечете ја притисната верзија на копчето ако сакате да го прикажете копчето во избрана состојба. - Додадете ги сликите во вашиот проект.
a. Во Xcode, со вчитан проект, кликнете File од главното мени и изберете Додадете Files да „проектира“.
b. Во дијалогот, изберете ја сликата на копчето file(и) што сте ги презеле и кликнете Додадете.
c. Копчињата сега треба да бидат во проектот под вашиот директориум за проекти. Преместете ги на Поддршката Fileфолдер. - Додадете ја сликата на вашето копче.
За да ја овозможите сликата за вашето копче, можете да го измените атрибутот на копчето или да го користите setImage: forState метод на UIB копче предмет. Следете ги овие чекори за да го измените атрибутот на сликата за вашето копче:
a. Отворете ја приказната за вашата апликација.
b. Изберете го копчето во вашата приказна со кликнување на него или избирање од View Контролор Дрво на сцена.
c. Во Комунални услуги прозорец, отворете го Инспектор за атрибути.
d. На горниот дел од Инспекторот за атрибути, поставете го типот на копчето на Систем.
e. Во втората група поставки, изберете Стандардно за конфигурација на државата.
f. Во втората група поставки, паѓајте го поставката за слика.
g. Изберете го графичкиот план за најавување со Амазон што го додадовте во проектот. Не изберете ја верзијата 2x: таа ќе се вчита автоматски на уреди со висока густина на дисплеј (Ретина).
h. Поставете ја истата слика за поставката Позадина.
i. Ако сакате да наведете притиснато издание на копчето, изберете Избрана за конфигурација на состојба и поставете ја сликата на _Притисната верзија на вашето копче.
j. На приказната, прилагодете ја големината на копчето за да ја прилагодите сликата, доколку е потребно.
Користење на SDK за iOS API
Во овој дел, ќе додадете код на вашиот проект за да се најавите корисник со најавување со Амазон.
Погледнете ги следниве теми:
- Ракувајте со копчето за најава и бидете професионалниfile Податоци
- Проверете дали се најавува корисник при стартување
- Исчистете ја државата за овластување и одјавете корисник
Овој дел објаснува како да се јавите на autorizeUserForScopes: делегат: и getProfile: АПИ да се најавите на корисник и да го вратите својот професионалецfile податоци. Ова вклучува создавање на onLoginButtonClicked: слушател за копчето Логирај се со Амазон.
- Додадете најава со Амазон во вашиот проект iOS. Погледнете Инсталирајте ја најавата со библиотеката во Амазон
- Увезете го најавувањето со Amazon API во вашиот извор file.
За да го увезете најавувањето со Amazon API, додадете го следново # увезувања до вашиот извор file:# увоз - Создадете го AMZNAовластете го КорисникотДелегатклас да се спроведе
Делегат на AIAuthentication.
Кога autorizeUserForScopes: делегат: завршува, ќе повика на побарувањеДали успеете: or requestDidFail: метод на објект што го спроведува Делегат на AIAuthentication протокол.@interface AMZNAовластетеUserDelegate: NSObject @ крај За повеќе информации, видете Работа со протоколи на developer.apple.com.
- Јавете се autorizeUserForScopes: делегат: in наПријавете се на копчетоКликнато.
Ако ги следевте чекорите Додадете најава со копчето Амазон во вашата апликација, треба да имате onLoginButtonClicked: метод поврзано со копчето Логирај се со Амазон. Во тој метод, јавете се овластиUserForScopes: делегира: до натерајте го корисникот да се најави и да ја овласти вашата апликација.
Овој метод ќе му овозможи на корисникот да се најавува и да даде согласност за бараната информација на еден од следниве начини:
1.) Се префрла на web view во безбеден контекст (ако апликацијата Amazon Shopping е инсталирана на уредот)
2.) Префрлува на Safari View Контролер (на iOS 9 и понова верзија)
3.) Префрлува на системскиот прелистувач (на iOS 8 и порано)
Безбедниот контекст за првата опција е достапен кога апликацијата „Амазон шопинг“ е инсталирана на уредот. Ако корисникот е веќе најавен во апликацијата Амазон за купување, страницата за најавување е прескокната, што доведува до Еднократно најавување (SSO) искуство.Кога вашата апликација е овластена, таа е овластена за еден или повеќе множества податоци познати како опсези. Првиот параметар е низа опсези кои ги опфаќаат корисничките податоци што ги барате од најавување со Амазон. Првиот пат кога корисникот ќе се логира во вашата апликација, ќе им биде презентиран список со податоците што ги барате и ќе побараат одобрување. Најавувањето со Амазон во моментов поддржува три опсези: проfile, што содржи име на корисникот, адреса за е-пошта и ID на сметка на Амазон; проfile: user_id, што содржи само ID на сметка во Амазон; и поштенски код, кој содржи поштенски / поштенски код на корисникот.
Вториот параметар до autorizeUserForScopes: делегат: е објект што го спроведува AIA автентикација Делегат протокол, во овој случај инстанца на AMZNAовластете го Корисникот Делегат класа.- (IBAction) наLogInButtonКликна: (id) испраќач {
// Овластете повик до SDK за да добиете белег за безбеден пристап
// за корисникот.
// Додека го остварувате првиот повик, можете да ги наведете минималните основни
// потребни опсези.// Барање на двата опсези за тековниот корисник.
NSArray * requestScopes =
[NSArray arrayWithObjects:@”проfile”, @” Postal_code ”, нула];AMZNAовластете го Корисникот Делегат * делегат =
[AIMobileLib autorizeUserForScopes: делегат на requestScopes: делегат];
[[AMZNAuthorizeUserDelegate додели] initWithParentController: self];Додадете го заглавието за имплементација на делегатот на повикот на часот
овластетеUserForScopes:. За прampле:# увоз „AMZNAовластете го корисникотДелегат.h“ - Создадете еден AMZNGetProfileДелегирајте.
AMZNGetProfileДелегати нашето име за класа што ја спроведува
AIA автентикација Делегат протокол, и ќе го обработи резултатот од getProfile: повик Допаѓа autorizeUserForScopes: делегира :, getProfile: го поддржува побарувањеДали успеете: и requestDidFail: протокол методи. побарувањеДали успеете: прима ПРЕСВЕТ објект со проfile податоци во својството резултат. requestDidFail: прима Грешка во AI објект со информации за грешка во својството за грешка.
За да креирате делегатска класа од декларација за нормална класа, увезете
AIAuthenticationDelegate.рачна додадете протокол во декларацијата во заглавието на вашата класа file:#увоз @интерфејс AMZNGetProfileДелегат: NSObject @крај - Спроведување requestDidSucuccess: за вашиот AMZNAовластете го Корисничкиот делегат. In барањеДали успеете :, јавете се getProfile: за враќање на клиентот проfile. getProfile:, како autorizeUserForScopes: делегат :, го користи протоколот AIAuthenticationDelegate.
- (неважечко) барањеДали успеа: (APIResult *) apiResult {
// Вашиот код откако корисникот ќе одобри апликација за
// побарани опсези.// Вчитај ново view контролер со информации за идентификација на корисникот
// бидејќи корисникот сега е успешно најавен.AMZNGetProfileДелегирај* делегирај =
[[[AMZNGetProfileDelegate alloc] initWithParentController:parentViewКонтролер] автоматско ослободување];
[AIMobileLib getProfile:делегат];
}Додадете го заглавието за имплементација на делегатот на повикот на часот getProfile:. Девизен курсampле:
#увоз „AMZNGetProfileДелегат.х “ - Спроведување побарувањеДали успеете: за вашиот AMZNGetProfileДелегирајте.
requestDidSucuccess: има две главни задачи: да го вратите професионалецотfile податоци од АПРЕСУЛТ, и да ги предаде податоците на корисничкиот интерфејс.
За да го вратите проfile податоци од АПРЕСУЛТ, пристап до својството на резултатот. За getProfile: одговор, тој имот ќе содржи речник на вредности на својства за корисникот проfile својства. Професионалецотfile својствата се име, е-пошта, и user_id за проfile обем и
поштенски_код за поштенски_код опсегот.- (неважечко) барањеДали успеа: (APIResult *) apiResult {
// Земете професионалциfile барањето успеа. Отпакувајте го професионалецотfile информации
// и пренесете го на родителот view контролерNSString * name = [(NSD речникот *) apiResult.резултат
objectForKey: @ ”name”];
NSString * е-пошта = [(NSD речникот *) apiResult.резултат
objectForKey: @ ”е-пошта”];
NSString * user_id = [(NSD речникот *) apiResult.резултат
objectForKey: @ ”user_id”];
NSString * postal_code = [(NSD Речник *) apiResult.резултат
objectForKey: @ ”postal_code”];// Пренесете податоци на view контролер
} - Спроведување requestDidFail: за вашиот AMZNGetProfileДелегирајте.
requestDidFail: вклучува ан Грешка во АПИЕ објект што содржи детали за грешката. showLogInPageis хипотетички метод кој би го ресетирал главниот view контролер за да го прикаже копчето Login with Amazon.- (неважечко) барањеDidFail: (APIError *) errorResponse {
// Земете Проfile барањето не успеа за проfile опсегот.
// Ако кодот за грешка = kAIAПрименаNotAuthorized,
// дозволете му на корисникот повторно да се најавува.
ако (errorResponse.error.code == kAIApplicationNotAuthorized) {
// Покажи го копчето за овластување на корисникот.
[родителViewКонтролер showLogInPage];
}
друго {
// Справи со други грешки
[[[[UIAlertView додели] initWithTitle:@”” порака: [NSString
stringWithFormat: @ ”Се појави грешка при пораката:% @”,
errorResponse.error.message] делегат: нула
cancelButtonTitle: @ ”OK” otherButtonTitles: nil] autorelease] show];
}
} - Спроведување requestDidFail: за вашиот AMZNAовластете го Корисничкиот делегат.
- (неважечко) барањеDidFail: (APIError *) errorResponse {
NSString * порака = errorResponse.error.message;
// Вашиот код кога овластувањето не успее. [[[[UIAlertView додели] initWithTitle:@”” порака: [NSString
stringWithFormat: @ ”Овластувањето на корисникот не успеа со порака:% @”, errorResponse.error.message] делегат: нула
cancelButtonTitle: @ ”OK” otherButtonTitles: nil] autorelease] show];
}10. Спроведување апликација: отвореноURL: sourceApplication: прибелешка: на часот во вашиот проект кој се справува со Делегат на УИАпликација протокол (по дифолт ова ќе биде AppDelegate class во вашиот проект). Кога апликацијата ја презентира страницата за најавување во Амазон, а корисникот го комплетира најавувањето, таа ќе се пренасочи кон апликацијата користејќи ја URL Шемирајте ја апликацијата регистрирана порано. Тоа пренасочување е пренесено на апликација: отвореноURL: sourceApplication: прибелешка :, што се враќа ДА ако на URL успешно се ракуваше. рачкаОтвориURL: извор Апликација: е функција на библиотека SDK што ќе се справи со најавувањето со пренасочување на Амазон URLе за тебе. Ако рачкаОтвориURL: sourceApplication: враќа ДА, потоа на URL беше ракуван.
- (BOOL) апликација: (UIApplication *) апликација
отворениURL: (НСURL *)url
sourceApplication: (NSString *) sourceApplication
прибелешка: (id) прибелешка
{
// Пренесете на url до SDK за анализирање на кодот за овластување // од url.
БИЛО е валиденРерактивен знакИнURL =
[AIMobileLib рачка ОтвореноURL:url
изворАплион катјонски: кисело ceApplicati на);
ако (! isValidRedirect Si gnlnURL)
врати НЕ;
// Апликацијата можеби сака да се справи со е url вратете ДА;
}ЗАБЕЛЕШКА: Овој метод е застарен во iOS 9, но треба да биде вклучен во вашиот проект за да ја задржите поддршката за корисниците на постарите платформи. За повеќе информации на апликација: отвореноURL: sourceApplication: прибелешка :, види Упатување на UIApplicationDelegate протокол на developer.apple.com.
Проверете дали се најавува корисник при стартување
Ако корисник се најави во вашата апликација, ја затвори апликацијата и ја рестартира подоцна, апликацијата е сè уште овластена за преземање податоци. Корисникот не се одјавува автоматски. При стартување, можете да му покажете на корисникот како најавен ако вашата апликација е сè уште овластена. Овој дел објаснува како да се користи
getAccessTokenForScopes: withOverrideParams: делегат: да видат дали апликацијата е сè уште овластена.
- Создадете еден Делегат на AMZNGetAccessToken класа. AMZNGetAccessTokenDelegateimplements на Делегат на AIAuthentication протокол, и ќе го обработи резултатот од
getAccessTokenForScopes: withOverrideParams: делегат: јавете се. Делегат на AIAuthentication содржи два методи, побарувањеДали успеете: и requestDidFail:. побарувањеДали успеете: прима ПРЕСВЕТ објект со податоци за токен, додека requestDidFail: прима Грешка во АПИЕ објект со информации за грешката.# увоз @interface AMZNGetAccessTokenDelegate: NSObject
@крај
Додадете го заглавието за имплементација на делегатот на повикот на часот
getAccessTokenForScopes: withOverrideParams: делегат :. Forexampле:# увоз „AMZNGetAccessTokenDelegate.h“ - Почеток на апликацијата, јавете се
getAccessTokenForScopes: withOverrideParams: делегат: да видат дали апликацијата е сè уште овластена. getAccessTokenForScopes: withOverrideParams: делегат: го презема сигналот за суров пристап што го користи Логирање со Амазон за да пристапи до клиент проfileНа Ако методот успее, апликацијата е сеуште овластена и повик до getProfile: треба да успеат. getAccessTokenForScopes: withOverrideParams: делегат: користи на Делегат на AIAuthentication протокол на ист начин како и овластиUserForScopes: делегат:. Поминете го објектот што го спроведува протоколот како параметар на делегатот.- (неважечка) чекIsUserSignedIn {
Делегат на AMZNGetAccessTokenDelegate *
[[[AMZNGetAccessTokenDelegate alloc] initWithParentController:self] автоматско ослободување];
NSArray * requestScopes =
[NSArray arrayWithObjects:@”проfile”, @” Postal_code ”, нула]; [AIMobileLib getAccessTokenForScopes: requestScopes withOverrideParams: нула делегат: делегат];
} - Спроведување побарувањеДали успеете: на вашиот Делегат на AMZNGetAccessToken. побарувањеДали успеете: има една задача: да се јави getProfile:. Овој ексample повици getProfile: користејќи го истиот слушател што го објавивте во претходниот дел (видете ги чекорите 6-8).
#увоз „AMZNGetProfileДелегат.х “
# увоз- (неважечко) барањеДали успеа: (APIResult *) apiResult {
// Вашиот код за користење токен за пристап оди овде.// Бидејќи апликацијата има овластување за нашите опсези, можеме
[AIMobileLib getProfile:делегат];
// добијте го корисникот проfile.
AMZNGetProfileДелегирај* делегирај = [[[AMZNGetProfileDelegate распредели] initWithParentController: родителViewКонтролер] автоматско ослободување];
} - Спроведување requestDidFail: на вашиот Делегат на AMZNGetAccessToken.
requestDidFail: вклучува ан Грешка во АПИЕ објект што содржи детали за грешката. Ако добиете грешка, можете да го ресетирате главниот view контролер за да го прикаже копчето Login with Amazon.- (неважечко) барањеDidFail: (APIError *) errorResponse {
// Вашиот код за ракување со неуспешно враќање на токенот за пристап.
// Ако кодот за грешка = kAIAпликацијаНеАвторизиран, дозволете му на корисникот
// повторно да се најавите.
ако (errorResponse.error.code == kAIApplicationNotAuthorized) {
// Покажи најава со копчето Амазон.
}
друго {
// Справи со други грешки
[[[[UIAlertView додели] initWithTitle:@”” порака: [NSString
stringWithFormat: @ ”Се појави грешка при порака:% @”, errorResponse.error.message] делегат: нула
cancelButtonTitle:@“OK“ otherButtonTitles:nil] autorease] show];
}
}
На јасноAuthorizationState: методот ќе ги исчисти податоците за овластување на корисникот од AIMobileLib локална продавница за податоци. Корисникот ќе мора повторно да се логира за да може апликацијата да преземе проfile податоци. Користете го овој метод за да се одјавите корисник или да ги решите проблемите со најавување во апликацијата.
- Прогласи ан AMZNLogoutДелегат. Ова е класа што ја спроведува
Протокол за автентикација на делегатот на AIA. За наши цели, можеме да го наследиме часот од Предмет на НС:
# увоз @interface AMZNLogoutДелегат NSObject
@крај
Додадете го заглавието за имплементација на делегатот на повикот на часот јасноАвторизацијаДржава:. За прampле:
# увоз „AMZNLogoutDelegate.h“ - Јавете се јасноАвторизацијаДржава:.
Кога корисникот е успешно најавен, може да обезбедите механизам за одјавување за да може да ги исчисти податоците за овластување. Вашиот механизам може да биде хиперврска, или ставка од менито, но за ова сценарио прample ќе создаде а одјавување Копче кликнато метод за копче за одјавување.- Одјавување од (IBAction) Копче Кликнено: (id) испраќач {
AMZNLogoutDelegate* делегат = [[[AMZNLogoutDelegate alloc] initWithParentController:self] автоматско ослободување]; [AIMobileLib clearAuthorizationState:delegate];
}Единствениот параметар до јасноAuthorizationState е ан Делегат на AIAuthentication што спроведува побарувањеДали успеете: и requestDidFail :.
- Спроведување барањеДали успеа:. Овој метод ќе се повика кога ќе се исчистат информациите на корисникот. Потоа треба да ги покажете како одјавени.
- (неважечко) барањеДали успеа: (APIResult *) apiResult {
// Вашата дополнителна логика по овластувањето на корисникот
// состојбата е расчистена.
[[[UIAlertView додели] initWithTitle:@”” порака:@”Корисникот е одјавен.”
delegate:nil cancelButtonTitle:@“OK“ otherButtonTitles:nil] show];
} - Спроведување requestDidFail :. Овој метод ќе се повика ако поради некоја причина информациите на корисникот не можат да се исчистат од кешот. Во тој случај, не треба да ги покажувате како одјавени.
- (неважечко) барањеDidFail: (APIError *) errorResponse {
// Вашата дополнителна логика откако СДК не успеа да се расчисти
// државата за овластување. [[[[UIAlertView додели] initWithTitle:@”” порака: [NSString
stringWithFormat: @ ”Одјавувањето на корисникот не успеа со порака:% @”,
errorResponse.error.message] делегат: нула
cancelButtonTitle:@“OK“ otherButtonTitles:nil] autorease] show];
}
Тестирајте ја вашата интеграција
Стартувајте ја вашата апликација во iOS уред или симулатор и потврдете дека можете да се најавите со акредитивните писма на Amazon.com.
Забелешка: Кога тестирате на симулатори iOS10, може да видите дека пораката за грешка APIKey за апликацијата е невалидна за барање за овластувањеUserForScopes или непознат код за грешка за јасно барање за авторизација на државата. Ова е позната грешка со Apple што се случува кога SDK се обидува да пристапи до синџирот на клучеви. Додека Apple не ја реши грешката, можете да работите околу него со овозможување споделување на Keychain за вашата апликација под табулаторот Капацитети на целта на вашата апликација. Оваа грешка влијае само на симулаторите. Може да тестирате на вистински уреди iOS10 без да користите какви било решенија.
Најавете се со Водич за започнување со Амазон за верзија на iOS 2.1.2 - Преземи [оптимизиран]
Најавете се со Водич за започнување со Амазон за верзија на iOS 2.1.2 - Преземи