เข้าสู่ระบบด้วยคู่มือเริ่มต้นใช้งาน Amazon สำหรับ iOS
เข้าสู่ระบบด้วย Amazon: คู่มือเริ่มต้นใช้งานสำหรับ iOS
ลิขสิทธิ์© 2016 Amazon.com, Inc. หรือ บริษัท ในเครือ สงวนลิขสิทธิ์.
Amazon และโลโก้ Amazon เป็นเครื่องหมายการค้าของ Amazon.com, Inc. หรือ บริษัท ในเครือ เครื่องหมายการค้าอื่น ๆ ทั้งหมดที่ไม่ได้เป็นของ Amazon ถือเป็นทรัพย์สินของเจ้าของที่เกี่ยวข้อง
เริ่มต้นใช้งานสำหรับ iOS
ในคู่มือนี้ เราจะแสดงวิธีเพิ่มการเข้าสู่ระบบด้วย Amazon ให้กับแอป iOS ของคุณ หลังจากทำตามคำแนะนำนี้แล้ว คุณควรมีปุ่มเข้าสู่ระบบด้วย Amazon ที่ใช้งานได้ในแอปของคุณ เพื่อให้ผู้ใช้สามารถเข้าสู่ระบบด้วยข้อมูลรับรอง Amazon ของตนได้
กำลังติดตั้ง Xcode
การเข้าสู่ระบบด้วย Amazon SDK สำหรับ iOS มีให้โดย Amazon เพื่อช่วยคุณเพิ่มการเข้าสู่ระบบด้วย Amazon ไปยังแอปพลิเคชัน iOS ของคุณ SDK มีวัตถุประสงค์เพื่อใช้กับสภาพแวดล้อมการพัฒนา Xcode SDK รองรับแอปที่ทำงานบน iOS 7.0 ขึ้นไปโดยใช้ ARMv7, ARMv7s, ARM64, i386 และ x86_64
คุณสามารถติดตั้ง Xcode ได้จาก Mac App Store สำหรับข้อมูลเพิ่มเติมโปรดดู Xcode: มีอะไรใหม่ ใน developer.apple.com
หลังจากติดตั้ง Xcode แล้วคุณสามารถทำได้ ติดตั้งการเข้าสู่ระบบด้วย Amazon SDK สำหรับ iOS และ วิ่งเอสampแอพ leตามที่อธิบายไว้ด้านล่าง
ติดตั้งการเข้าสู่ระบบด้วย Amazon SDK สำหรับ iOS
การเข้าสู่ระบบด้วย Amazon SDK สำหรับ iOS มาในสองแพ็คเกจ อันแรกประกอบด้วยไลบรารี iOS และเอกสารประกอบ ที่สองประกอบด้วย asampแอปพลิเคชันที่อนุญาตให้ผู้ใช้เข้าสู่ระบบและ view โปรของพวกเขาfile ข้อมูล.
หากคุณยังไม่ได้ติดตั้ง Xcode โปรดดูคำแนะนำในไฟล์ ติดตั้ง Xcode ส่วนข้างบนนี้
- ดาวน์โหลด เข้าสู่ระบบด้วย AmazonSDKForiOS.zip และสกัดเอา fileไปยังไดเร็กทอรีบนฮาร์ดไดรฟ์ของคุณ
คุณควรเห็น เข้าสู่ระบบด้วยAmazon.framework ไดเรกทอรี ประกอบด้วยไลบรารีการเข้าสู่ระบบด้วย Amazon
ที่ระดับบนสุดของซิปคือไฟล์ เข้าสู่ระบบด้วย Amazon.doc ตั้งค่าไดเร็กทอรี ซึ่งประกอบด้วยเอกสารประกอบ API - ดู ติดตั้งการเข้าสู่ระบบด้วย Amazon Library สำหรับคำแนะนำเกี่ยวกับวิธีเพิ่มคลังลงในโปรเจ็กต์ iOS
เมื่อติดตั้งเข้าสู่ระบบด้วย Amazon SDK สำหรับ iOS คุณสามารถทำได้ สร้างการเข้าสู่ระบบใหม่ด้วยโครงการ Amazon หลังจาก การลงทะเบียนด้วยการเข้าสู่ระบบกับ Amazon
วิ่งเอสampแอพ le
เพื่อเรียกใช้ sampแอปพลิเคชัน เปิด sampใน Xcode
- ดาวน์โหลด Sampleเข้าสู่ระบบด้วย AmazonAppForiOS.zip และคัดลอก
Sampไดเรกทอรี leLoginWithAmazonAppForiOS ไปยังโฟลเดอร์เอกสารของคุณ - เริ่ม Xcode หากกล่องโต้ตอบยินดีต้อนรับสู่ Xcode ปรากฏขึ้น ให้คลิกเปิดอื่น ๆ หรือจากเมนูหลัก คลิก File และเลือกเปิด
- เลือกโฟลเดอร์ Documents และเลือก
SampleLoginWithAmazonAppForiOS/เข้าสู่ระบบด้วยAmazonSampเลอ/ เข้าสู่ระบบด้วย AmazonSample.xcodeproj. คลิก เปิด. - ของampตอนนี้ควรโหลดโปรเจ็กต์เลอ เสร็จแล้วเลือก ผลิตภัณฑ์ จากเมนูหลักและเลือก วิ่ง
การลงทะเบียนด้วยการเข้าสู่ระบบกับ Amazon
ก่อนที่คุณจะสามารถใช้งานการเข้าสู่ระบบด้วย Amazon บน webไซต์หรือในแอปมือถือ คุณต้องลงทะเบียนแอปพลิเคชันด้วย Login with Amazon แอปพลิเคชัน Login with Amazon ของคุณคือการลงทะเบียนที่มีข้อมูลพื้นฐานเกี่ยวกับธุรกิจของคุณ และข้อมูลเกี่ยวกับแต่ละ webไซต์หรือแอปมือถือที่คุณสร้างซึ่งรองรับการเข้าสู่ระบบด้วย Amazon ข้อมูลธุรกิจนี้จะแสดงให้ผู้ใช้เห็นทุกครั้งที่ใช้การเข้าสู่ระบบด้วย Amazon บน webไซต์หรือแอปบนอุปกรณ์เคลื่อนที่ ผู้ใช้จะเห็นชื่อแอปพลิเคชัน โลโก้ และลิงก์ไปยังนโยบายความเป็นส่วนตัวของคุณ ขั้นตอนเหล่านี้สาธิตวิธีการลงทะเบียนแอปพลิเคชันเข้าสู่ระบบด้วย Amazon และเพิ่มแอป iOS ลงในบัญชีนั้น
ดูหัวข้อต่อไปนี้
- ลงทะเบียนเข้าสู่ระบบของคุณด้วยแอปพลิเคชัน Amazon
- เพิ่มแอป iOS ให้กับ Security Profile
- iOS Bundle ID และคีย์ API
o กำหนด Bundle Identifier สำหรับแอพ iOS
o ดึงข้อมูลคีย์ iOS API
ลงทะเบียนเข้าสู่ระบบของคุณด้วยแอปพลิเคชัน Amazon
- ไปที่ https://login.amazon.com.
- หากคุณเคยสมัครเข้าสู่ระบบกับ Amazon มาก่อนให้คลิก App Console มิฉะนั้นให้คลิก ลงทะเบียน
คุณจะถูกนำไปที่ Sell Central ซึ่งจัดการการลงทะเบียนแอปพลิเคชันสำหรับการเข้าสู่ระบบด้วย Amazon หากนี่เป็นครั้งแรกที่คุณใช้ Sell Central คุณจะถูกขอให้ตั้งค่าบัญชี Sell Central - คลิก ลงทะเบียนสมัครใหม่. การ ลงทะเบียนใบสมัครของคุณ แบบฟอร์มจะปรากฏขึ้น:
a. ในแบบฟอร์มลงทะเบียนใบสมัครของคุณ ให้ป้อนชื่อและก คำอธิบาย สำหรับการใช้งานของคุณ
การ ชื่อ คือชื่อที่แสดงบนหน้าจอความยินยอมเมื่อผู้ใช้ตกลงที่จะแบ่งปันข้อมูลกับแอปพลิเคชันของคุณ ชื่อนี้ใช้ได้กับ Android, iOS และ webเวอร์ชันไซต์ของแอปพลิเคชันของคุณ
b. ป้อนประกาศความเป็นส่วนตัว URL สำหรับการใช้งานของคุณ
ประกาศความเป็นส่วนตัว URL คือที่ตั้งของนโยบายความเป็นส่วนตัวของบริษัทหรือแอปพลิเคชันของคุณ (เช่นampเลอ, http://www.example.com/privacy.html) ลิงก์นี้จะแสดงให้ผู้ใช้เห็นในหน้าจอยินยอม
c. หากคุณต้องการเพิ่ม รูปภาพโลโก้ สำหรับการสมัครของคุณคลิก ค้นหา และค้นหารูปภาพที่ใช้ได้
โลโก้นี้แสดงอยู่ในหน้าจอลงชื่อเข้าใช้และยินยอมเพื่อแสดงถึงธุรกิจของคุณหรือ webงาน. โลโก้จะถูกย่อให้มีความสูง 50 พิกเซล หากสูงกว่า 50 พิกเซล ไม่จำกัดความกว้างของโลโก้ - คลิก บันทึก. สของคุณampการลงทะเบียนควรมีลักษณะคล้ายกับนี้:
หลังจากบันทึกการตั้งค่าแอปพลิเคชั่นพื้นฐานของคุณแล้ว คุณสามารถเพิ่มการตั้งค่าสำหรับเฉพาะได้ webเว็บไซต์และแอพมือถือที่จะใช้การเข้าสู่ระบบด้วยบัญชี Amazon
หากแอปเวอร์ชันต่างๆ ของคุณมีรหัสบันเดิลที่แตกต่างกัน เช่น เวอร์ชันทดสอบอย่างน้อย 1 เวอร์ชันและเวอร์ชันที่ใช้งานจริง แต่ละเวอร์ชันจะต้องมีคีย์ API ของตัวเอง จาก การตั้งค่า iOS ของแอปของคุณคลิก เพิ่มคีย์ API ปุ่มเพื่อสร้างคีย์เพิ่มเติมสำหรับแอปของคุณ (หนึ่งปุ่มต่อเวอร์ชัน)
เพิ่มแอป iOS ให้กับ Security Profile
หลังจากบันทึกการตั้งค่าแอปพลิเคชั่นพื้นฐานของคุณแล้ว คุณสามารถเพิ่มการตั้งค่าสำหรับเฉพาะได้ webเว็บไซต์และแอพมือถือที่จะใช้การเข้าสู่ระบบด้วยบัญชี Amazon
ในการลงทะเบียนแอป iOS คุณต้องระบุ Bundle identifier สำหรับโปรเจ็กต์แอพ เข้าสู่ระบบด้วย Amazon จะใช้ Bundle ID เพื่อสร้างคีย์ API คีย์ API จะให้สิทธิ์แอปของคุณในการเข้าสู่ระบบด้วยบริการอนุญาตของ Amazon ทำตามขั้นตอนเหล่านี้เพื่อเพิ่มแอป iOS ในบัญชีของคุณ:
- จากหน้าจอแอปพลิเคชัน คลิก การตั้งค่า iOS หากคุณลงทะเบียนแอป iOS แล้วให้มองหาไฟล์ เพิ่มคีย์ API ปุ่มใน การตั้งค่า iOS ส่วน.
การ แอปพลิเคชัน iOS แบบฟอร์มรายละเอียดจะปรากฏขึ้น:
- เข้าสู่ ฉลาก ของแอพ iOS ของคุณ ไม่จำเป็นต้องเป็นชื่ออย่างเป็นทางการของแอปของคุณ เพียงระบุแอป iOS นี้ในแอปและ webไซต์ที่ลงทะเบียนเข้าสู่ระบบด้วยแอปพลิเคชัน Amazon ของคุณ
- ป้อนของคุณ รหัส Bundle สิ่งนี้จะต้องตรงกับตัวระบุบันเดิลของโปรเจ็กต์ iOS ของคุณ หากต้องการระบุตัวระบุบันเดิลของคุณ ให้เปิดโปรเจ็กต์ใน Xcode เปิดรายการคุณสมบัติสำหรับโครงการ ( -Info.plist) ใน ตัวนำทางโครงการ ตัวระบุ Bundle เป็นหนึ่งในคุณสมบัติในรายการ
- คลิก บันทึก.
iOS Bundle ID และคีย์ API
ตัวระบุ Bundle นั้นมีเอกลักษณ์เฉพาะสำหรับแอพ iOS ทุกตัว การเข้าสู่ระบบด้วย Amazon จะใช้ Bundle ID เพื่อสร้างคีย์ API ของคุณ คีย์ API เปิดใช้งานบริการอนุญาตการเข้าสู่ระบบด้วย Amazon เพื่อจดจำแอปของคุณ
กำหนด Bundle Identifier สำหรับแอพ iOS
- เปิดโปรเจ็กต์แอปของคุณใน Xcode
- เปิด รายการทรัพย์สินข้อมูล สำหรับโครงการ - -Info.plist) ใน ตัวนำทางโครงการ
- หา ตัวระบุกลุ่ม ในรายการคุณสมบัติ
ดึงคีย์ iOS API
หลังจากที่คุณลงทะเบียนเวอร์ชัน iOS และระบุ Bundle ID แล้วคุณสามารถดึงคีย์ API ได้จากหน้าการลงทะเบียนสำหรับการเข้าสู่ระบบด้วยแอปพลิเคชัน Amazon ของคุณ คุณจะต้องวางคีย์ API นั้นลงในรายการคุณสมบัติของโปรเจ็กต์ของคุณ แอปจะไม่ได้รับอนุญาตให้สื่อสารกับบริการเข้าสู่ระบบด้วยการอนุญาตของ Amazon จนกว่าคุณจะดำเนินการดังกล่าว
1. ไปที่ https://login.amazon.com.
2. คลิก App Console App.
3. ใน แอปพลิเคชั่น คลิกแอปพลิเคชันของคุณ
4. ค้นหาแอป iOS ของคุณภายใต้ การตั้งค่า iOS ส่วน. หากคุณยังไม่ได้ลงทะเบียนแอป iOS โปรดดู เพิ่มแอป iOS ให้กับ Security Profile.
5. คลิก สร้างค่าคีย์ API หน้าต่างป๊อปอัปจะแสดงคีย์ API ของคุณ ในการคัดลอกคีย์ให้คลิก เลือกทั้งหมด เพื่อเลือกคีย์ทั้งหมด
บันทึก: ค่าคีย์ API บางส่วนจะขึ้นอยู่กับเวลาที่สร้างขึ้น ดังนั้นค่าคีย์ API ที่ตามมาที่คุณสร้างอาจแตกต่างไปจากเดิม คุณสามารถใช้ค่าคีย์ API เหล่านี้ในแอปของคุณได้เนื่องจากถูกต้องทั้งหมด
6. ดู เพิ่มคีย์ API ของคุณในรายการคุณสมบัติของแอป สำหรับคำแนะนำในการเพิ่มคีย์ API ให้กับแอป iOS ของคุณ
การสร้างการเข้าสู่ระบบด้วย Amazon Project
ในส่วนนี้คุณจะได้เรียนรู้วิธีสร้างโปรเจ็กต์ Xcode ใหม่สำหรับเข้าสู่ระบบด้วย Amazon และกำหนดค่าโปรเจ็กต์
ดูหัวข้อต่อไปนี้:
- สร้างการเข้าสู่ระบบใหม่ด้วยโครงการ Amazon
- ติดตั้งการเข้าสู่ระบบด้วย Amazon Library
- เพิ่มคีย์ API ของคุณในรายการคุณสมบัติของแอป
- เพิ่ม URL โครงการรายการคุณสมบัติของแอปของคุณ
- เพิ่มข้อยกเว้นด้านความปลอดภัยในการขนส่งแอปสำหรับ Amazon ให้กับแอปของคุณ รายการทรัพย์สิน
บันทึก: ขั้นตอนใหม่นี้จำเป็นในปัจจุบันเมื่อพัฒนาบน iOS 9 SDK - เพิ่มการเข้าสู่ระบบด้วยปุ่ม Amazon ในแอปของคุณ
สร้างการเข้าสู่ระบบใหม่ด้วยโครงการ Amazon
หากคุณยังไม่มีโปรเจ็กต์แอปสำหรับใช้เข้าสู่ระบบด้วย Amazon ให้ทำตามคำแนะนำด้านล่างเพื่อสร้างโปรเจ็กต์ หากคุณมีแอพอยู่แล้ว ให้ข้ามไปที่ส่วนติดตั้งการเข้าสู่ระบบด้วย Amazon Library ด้านล่าง
- ปล่อย เอ็กซ์โค้ด
- หากคุณได้รับไฟล์ ยินดีต้อนรับสู่ Xcode กล่องโต้ตอบ เลือก สร้างโครงการ Xcode ใหม่.
มิฉะนั้นจาก File เมนู เลือก ใหม่ และ โครงการ. - เลือกประเภทโครงการที่คุณต้องการสร้างและคลิก ต่อไป.
- เข้าสู่ ชื่อสินค้า และก ตัวระบุ บริษัท จดบันทึกไฟล์ ตัวระบุชุดข้อมูลและคลิก ต่อไป.
- เลือกตำแหน่งที่จะจัดเก็บโครงการของคุณแล้วคลิก สร้าง.
ตอนนี้คุณจะมีโปรเจ็กต์ใหม่ที่คุณสามารถใช้เพื่อโทรเข้าสู่ระบบด้วย Amazon
ติดตั้งการเข้าสู่ระบบด้วย Amazon Library
หากคุณยังไม่ได้ดาวน์โหลดการเข้าสู่ระบบด้วย Amazon SDK สำหรับ iOS โปรดดู ติดตั้งการเข้าสู่ระบบด้วย Amazon SDK สำหรับ iOS.
โครงการเข้าสู่ระบบด้วย Amazon ต้องเชื่อมโยงไฟล์ เข้าสู่ระบบด้วยAmazon.framework และ ความปลอดภัย.เฟรมเวิร์ก ห้องสมุด คุณจะต้องกำหนดค่าพาธการค้นหาเฟรมเวิร์กเพื่อค้นหาส่วนหัวการเข้าสู่ระบบด้วย Amazon
- เมื่อโปรเจ็กต์ของคุณเปิดใน Xcode ให้เลือก กรอบงาน โฟลเดอร์คลิก File จากเมนูหลัก จากนั้นเลือก เพิ่ม Files ถึง "โครงการ".
- ในกล่องโต้ตอบให้เลือก เข้าสู่ระบบด้วยAmazon.framework และ คลิกเพิ่ม
หากคุณใช้ไลบรารี Login with Amazon 1.0 ให้ลบไดเร็กทอรี Login-with-amazon sdk และ Login-with-amazon-sdk.a ออกจากโฟลเดอร์ Frameworks คลิก แก้ไข จากเมนูหลักและเลือก ลบ. - เลือกชื่อโครงการของคุณใน ตัวนำทางโครงการ
การ ตัวแก้ไขโครงการ จะปรากฏในพื้นที่แก้ไขของพื้นที่ทำงาน Xcode - คลิกชื่อโครงการของคุณภายใต้ เป้าหมาย, และเลือก สร้างขั้นตอน ขยาย Link Binary with Libraries แล้วคลิกเครื่องหมายบวกเพื่อเพิ่มไลบรารี
- ในช่องค้นหาให้ป้อน Security.framework เลือก Security.framework และคลิก เพิ่ม.
- ในช่องค้นหาให้ป้อน SafariServices.framework. เลือก SafariServices.framework และคลิก เพิ่ม.
- ในช่องค้นหาให้ป้อน CoreGraphics.framework. เลือก CoreGraphics.framework และคลิก เพิ่ม
- เลือก การตั้งค่าการสร้าง- คลิกทั้งหมดเพื่อ view การตั้งค่าทั้งหมด
- ภายใต้ เส้นทางการค้นหา, เพื่อให้แน่ใจว่า เข้าสู่ระบบด้วยAmazon.framework ไดเร็กทอรีอยู่ในไฟล์ Framework Search Paths
เช่นampเลอ:
หากคุณใช้ไลบรารีเข้าสู่ระบบด้วย Amazon 1.0 คุณสามารถลบการอ้างอิงใดๆ ไปยังเส้นทางไลบรารี 1.0 ใน เส้นทางการค้นหาส่วนหัว or เส้นทางการสืบค้นห้องสมุด - จากเมนูหลักคลิก ผลิตภัณฑ์ และเลือก สร้าง. การสร้างควรเสร็จสมบูรณ์
ก่อนที่จะสร้างโปรเจ็กต์ของคุณ หากคุณใช้ไลบรารีเข้าสู่ระบบด้วย Amazon 1.0 ให้แทนที่ #นำเข้า “AIMobileLib.h”, #นำเข้า “AIAuthenticationDelegate.h”, or #นำเข้า “AIError.h” ในแหล่งที่มาของคุณ fileสด้วย #นำเข้า
.
เข้าสู่ระบบด้วย Amazon.h รวมส่วนหัวการเข้าสู่ระบบด้วย Amazon ทั้งหมดพร้อมกัน
เพิ่มคีย์ API ของคุณในรายการคุณสมบัติของแอป
เมื่อคุณลงทะเบียนแอปพลิเคชัน iOS ด้วยการเข้าสู่ระบบด้วย Amazon คุณจะได้รับรหัส API นี่คือตัวระบุที่ Amazon Mobile Library จะใช้เพื่อระบุแอปพลิเคชันของคุณไปยังบริการการอนุญาตการเข้าสู่ระบบด้วย Amazon Amazon Mobile Library โหลดค่านี้ขณะรันไทม์จากค่าคุณสมบัติคีย์ API ในรายการคุณสมบัติข้อมูลของแอปพลิเคชันของคุณ
- เมื่อโปรเจ็กต์ของคุณเปิดอยู่ให้เลือกไฟล์ การสนับสนุน Files จากนั้นเลือกไฟล์ -Info.plist file (ที่ไหน คือชื่อโครงการของคุณ) สิ่งนี้ควรเปิดรายการคุณสมบัติเพื่อแก้ไข:
- ตรวจสอบให้แน่ใจว่าไม่มีการเลือกรายการใดเลย จากนั้นจากเมนูหลัก คลิก บรรณาธิการ, และ เพิ่มรายการ เข้า APIKey และกด เข้า.
- ดับเบิลคลิกใต้ไฟล์ ค่า คอลัมน์เพื่อเพิ่มค่า วางคีย์ API ของคุณเป็นค่า
เพิ่ม URL โครงการรายการคุณสมบัติของแอปของคุณ
เมื่อผู้ใช้เข้าสู่ระบบผู้ใช้จะเห็นหน้าเข้าสู่ระบบของ Amazon เพื่อให้แอปของคุณได้รับการยืนยันการเข้าสู่ระบบคุณต้องเพิ่มไฟล์ URL โครงการเพื่อให้ web หน้าสามารถเปลี่ยนเส้นทางกลับไปที่แอปของคุณได้ NS URL ต้องประกาศโครงการเป็น ฉัน- (เช่นampเล, amzncom.exampเลอ.แอพ). สำหรับข้อมูลเพิ่มเติมโปรดดู โดยใช้ URL แบบแผนในการสื่อสารกับแอพ ใน developer.apple.com
- เมื่อโปรเจ็กต์ของคุณเปิดอยู่ให้เลือกไฟล์ การสนับสนุน Files จากนั้นเลือกไฟล์ -Info.plist file (ที่ไหน คือชื่อโครงการของคุณ) สิ่งนี้ควรเปิดรายการคุณสมบัติเพื่อแก้ไข:
- ตรวจสอบให้แน่ใจว่าไม่มีการเลือกรายการใดเลย จากนั้นจากเมนูหลัก คลิก บรรณาธิการ, และ เพิ่มรายการ ป้อนหรือเลือก URL ประเภท และกด เข้า.
- ขยาย URL ประเภท ที่จะเปิดเผย รายการ 0. เลือก รายการ 0 และจากเมนูหลัก คลิกแก้ไขและเพิ่มรายการ ป้อนหรือเลือก URL ระบุและกด เข้า.
- เลือก รายการ 0 ภายใต้ URL ตัวระบุ และดับเบิลคลิกใต้คอลัมน์ Value เพื่อเพิ่มค่า ค่านี้คือ ID บันเดิลของคุณ คุณสามารถค้นหา ID บันเดิลของคุณที่แสดงเป็นตัวระบุบันเดิลได้ในรายการคุณสมบัติ
- เลือก รายการ 0 ภายใต้ URL ประเภท และจากเมนูหลักคลิก บรรณาธิการ และ เพิ่มรายการ ป้อนหรือเลือก URL แบบแผนและกด Enter
- เลือก รายการ 0 ภายใต้ URL แผนการ และคลิกสองครั้งที่ด้านล่าง ค่า คอลัมน์เพื่อเพิ่ม ค่า. ค่านี้คือ ID บันเดิลของคุณด้วย ฉัน- นำหน้า (สำหรับ exampเล, amzn com.exampเลอ.แอป)- คุณสามารถค้นหา ID ชุดของคุณที่แสดงเป็น ตัวระบุกลุ่ม ในรายการคุณสมบัติ
เพิ่มข้อยกเว้นด้านความปลอดภัยในการขนส่งแอปสำหรับ Amazon ให้กับแอปของคุณ
รายการทรัพย์สิน
ตั้งแต่ iOS 9 เป็นต้นไป Apple บังคับใช้ App Transport Security (ATS) เพื่อการเชื่อมต่อที่ปลอดภัยระหว่างแอพและ web บริการ ตำแหน่งข้อมูล (api.amazon.com) ที่การเข้าสู่ระบบด้วย Amazon SDK โต้ตอบเพื่อแลกเปลี่ยนข้อมูลยังไม่สอดคล้องกับ ATS เพิ่มข้อยกเว้นสำหรับ api.amazon.com เพื่อเปิดใช้งานการสื่อสารที่ราบรื่นระหว่าง SDK และเซิร์ฟเวอร์ Amazon
- เมื่อโปรเจ็กต์ของคุณเปิดอยู่ให้เลือกไฟล์ การสนับสนุน Files จากนั้นเลือกไฟล์ -Info.plist file (ที่ไหน คือชื่อโครงการของคุณ) สิ่งนี้ควรเปิดรายการคุณสมบัติที่กำลังแก้ไข:
- ตรวจสอบให้แน่ใจว่าไม่มีรายการใดเลย จากนั้นคลิกจากเมนูหลัก บรรณาธิการ, และ เพิ่มรายการ- ป้อนหรือเลือก NSAppTransport ความปลอดภัย และกด เข้า.
- ขยาย NSAppTransport ความปลอดภัย และจากเมนูหลักคลิก บรรณาธิการ และ เพิ่มรายการ- ป้อนหรือเลือก NSExceptionDomains และกด เข้า.
- ขยาย NSExceptionDomains และจากเมนูหลักคลิก บรรณาธิการ และ เพิ่มรายการ- เข้า amazon.com แล้วกด เข้า.
- ขยาย อเมซอนดอทคอม และจากเมนูหลักคลิก บรรณาธิการ และ เพิ่มรายการ.เข้า NSExceptionต้องการการส่งต่อความลับ และกด เข้า.
- เลือก NSExceptionต้องการการส่งต่อความลับ และคลิกสองครั้งที่ด้านล่าง ค่า คอลัมน์เพื่อเพิ่ม Select a พิมพ์ of บูลีน และก ค่า of เลขที่.
การเข้าสู่ระบบด้วย Amazon มีปุ่มมาตรฐานหลายปุ่มที่คุณสามารถใช้เพื่อแจ้งให้ผู้ใช้เข้าสู่ระบบจากแอปของคุณได้ ส่วนนี้จะอธิบายขั้นตอนในการดาวน์โหลดการเข้าสู่ระบบอย่างเป็นทางการด้วยอิมเมจ Amazon และจับคู่กับ iOS UIButton
- เพิ่ม UIButton มาตรฐานให้กับแอปของคุณ
สำหรับบทแนะนำและข้อมูลเกี่ยวกับวิธีการเพิ่มปุ่มลงในแอปโปรดดู การสร้างและกำหนดค่า View วัตถุ และ เริ่มพัฒนาแอพ iOS วันนี้ ใน developer.apple.com - เพิ่ม สัมผัสภายใน เหตุการณ์สำหรับปุ่มไปยังเมธอดที่ชื่อ เมื่อเข้าสู่ระบบปุ่มคลิก- ปล่อยให้การใช้งานว่างไว้ก่อนตอนนี้ ที่ การสร้างและ การกำหนดค่า View วัตถุ และ เริ่มพัฒนาแอพ iOS วันนี้ เอกสารบน apple.com มีขั้นตอนในการเพิ่มเหตุการณ์ปุ่ม
- เลือกภาพปุ่ม
ปรึกษาการเข้าสู่ระบบของเรากับ Amazon แนวทางสไตล์ สำหรับรายการปุ่มที่คุณสามารถใช้ในแอปของคุณ ดาวน์โหลดสำเนาของไฟล์ LWA_for_iOS.zip file. ค้นหาปุ่มที่คุณต้องการทั้งในไดเร็กทอรี 1x และ 2x และดึงออกจากไฟล์ zip แยกเวอร์ชันของปุ่ม _Pressed หากคุณต้องการแสดงปุ่มในสถานะที่เลือก - เพิ่มภาพลงในโครงการของคุณ
a. ใน Xcode เมื่อโหลดโปรเจ็กต์ของคุณแล้วให้คลิก File จากเมนูหลักและเลือก เพิ่ม Fileสู่ “โครงการ”
b. ในกล่องโต้ตอบ ให้เลือกรูปภาพปุ่ม file(s) ที่คุณดาวน์โหลดและคลิก เพิ่ม.
c. ตอนนี้ปุ่มควรอยู่ในโครงการภายใต้ไดเรกทอรีโครงการของคุณ ย้ายไปที่ Support Fileโฟลเดอร์ - เพิ่มรูปภาพลงในปุ่มของคุณ
ในการเปิดใช้งานรูปภาพสำหรับปุ่มของคุณคุณสามารถแก้ไขแอตทริบิวต์ของปุ่มหรือใช้ไฟล์ setImage: forState วิธีการบน ปุ่ม UI วัตถุ. ทำตามขั้นตอนเหล่านี้เพื่อแก้ไขแอตทริบิวต์รูปภาพสำหรับปุ่มของคุณ:
a. เปิดกระดานเรื่องราวสำหรับแอปของคุณ
b. เลือกปุ่มในสตอรีบอร์ดของคุณโดยคลิกหรือเลือกจาก View ผู้ควบคุม ฉากต้นไม้.
c. ใน สาธารณูปโภค หน้าต่างเปิด ตัวตรวจสอบคุณสมบัติ
d. ที่ด้านบนของ Attribute Inspector ให้ตั้งค่าประเภทของปุ่มเป็น System
e. ในกลุ่มการตั้งค่าที่สอง ให้เลือกค่าเริ่มต้นสำหรับการกำหนดค่าสถานะ
f. ในกลุ่มการตั้งค่าที่สอง ให้เลื่อนการตั้งค่ารูปภาพลง
g. เลือกกราฟิกปุ่มเข้าสู่ระบบด้วย Amazon ที่คุณเพิ่มลงในโปรเจ็กต์ อย่าเลือกเวอร์ชัน 2x: จะโหลดโดยอัตโนมัติบนอุปกรณ์จอแสดงผลความหนาแน่นสูง (Retina)
h. ตั้งค่ารูปภาพเดียวกันสำหรับการตั้งค่าพื้นหลัง
i. หากคุณต้องการระบุเวอร์ชันที่กดของปุ่ม ให้เลือก Selected สำหรับ State Config และตั้งค่า Image เป็นเวอร์ชัน _Pressed ของปุ่มของคุณ
j. บนกระดานเรื่องราวให้ปรับขนาดของปุ่มเพื่อให้เหมาะกับภาพหากจำเป็น
การใช้ SDK สำหรับ iOS API
ในส่วนนี้คุณจะต้องเพิ่มรหัสในโปรเจ็กต์ของคุณเพื่อลงชื่อเข้าใช้ผู้ใช้ด้วยการเข้าสู่ระบบด้วย Amazon
ดูหัวข้อต่อไปนี้:
- จัดการปุ่มเข้าสู่ระบบและรับ Profile ข้อมูล
- ตรวจสอบการเข้าสู่ระบบของผู้ใช้เมื่อเริ่มต้น
- ล้างสถานะการอนุญาตและออกจากระบบผู้ใช้
ในส่วนนี้จะอธิบายวิธีการโทร อนุญาต UserForScopes: มอบหมาย: และ รับโปรfile:API เพื่อเข้าสู่ระบบผู้ใช้และรับโปรของพวกเขาfile ข้อมูล. ซึ่งรวมถึงการสร้าง onLoginButtonClicked:listener สำหรับปุ่มเข้าสู่ระบบด้วย Amazon
- เพิ่มการเข้าสู่ระบบด้วย Amazon ไปยังโปรเจ็กต์ iOS ของคุณ ดูการติดตั้งการเข้าสู่ระบบด้วย Amazon Library
- นำเข้าการเข้าสู่ระบบด้วย Amazon API ไปยังแหล่งที่มาของคุณ file.
ในการนำเข้าการเข้าสู่ระบบด้วย Amazon API ให้เพิ่มสิ่งต่อไปนี้ #สินค้านำเข้า ไปยังแหล่งที่มาของคุณ file:#import - สร้าง AMZNAuthorizeUserDelegateclass การดำเนินการ
AIAuthenticationDelegate
เมื่อไร อนุญาต UserForScopes: มอบหมาย: เสร็จแล้วก็จะเรียก. ร้องขอให้สำเร็จ: or ขอDidFail: วิธีการบนวัตถุที่ใช้ AIAuthenticationDelegate โปรโตคอล.@อินเทอร์เฟซ AMZNAuthorizeUserDelegate : NSObject @จบ สำหรับข้อมูลเพิ่มเติมโปรดดูที่ การทำงานกับโปรโตคอล ใน developer.apple.com
- เรียก อนุญาต UserForScopes: มอบหมาย: in onLoginButtonClicked
หากทำตามขั้นตอนใน เพิ่มการเข้าสู่ระบบด้วยปุ่ม Amazon ในแอปของคุณคุณควรมี onLoginButtonClicked: วิธีการ เชื่อมโยงกับปุ่มเข้าสู่ระบบด้วย Amazon ในวิธีดังกล่าวโทร อนุญาต UserForScopes: มอบหมาย: ถึง แจ้งให้ผู้ใช้เข้าสู่ระบบและให้สิทธิ์แอปพลิเคชันของคุณ
วิธีนี้จะช่วยให้ผู้ใช้สามารถลงชื่อเข้าใช้และยินยอมในข้อมูลที่ร้องขอด้วยวิธีใดวิธีหนึ่งดังต่อไปนี้:
1.) สลับไปที่ web view ในบริบทที่ปลอดภัย (หากติดตั้งแอป Amazon Shopping ลงในอุปกรณ์)
2.) เปลี่ยนไปใช้ Safari View ตัวควบคุม (บน iOS 9 และใหม่กว่า)
3.) เปลี่ยนเป็นเบราว์เซอร์ระบบ (บน iOS 8 และรุ่นก่อนหน้า)
บริบทที่ปลอดภัยสำหรับตัวเลือกแรกจะพร้อมใช้งานเมื่อมีการติดตั้งแอป Amazon Shopping ลงในอุปกรณ์ หากผู้ใช้ลงชื่อเข้าใช้แอป Amazon Shopping แล้ว หน้าลงชื่อเข้าใช้จะถูกข้ามไป ซึ่งนำไปสู่ การลงชื่อเข้าใช้ครั้งเดียว (SSO) ประสบการณ์.เมื่อแอปพลิเคชันของคุณได้รับอนุญาต จะได้รับอนุญาตสำหรับชุดข้อมูลตั้งแต่หนึ่งชุดขึ้นไปที่เรียกว่าขอบเขต พารามิเตอร์แรกคืออาร์เรย์ของขอบเขตที่ครอบคลุมข้อมูลผู้ใช้ที่คุณร้องขอจากการเข้าสู่ระบบด้วย Amazon ครั้งแรกที่ผู้ใช้ลงชื่อเข้าใช้แอปของคุณ พวกเขาจะเห็นรายการข้อมูลที่คุณร้องขอและขออนุมัติ ปัจจุบันการเข้าสู่ระบบด้วย Amazon รองรับสามขอบเขต: โปรfile, ซึ่งมีชื่อผู้ใช้ ที่อยู่อีเมล และรหัสบัญชี Amazon โปรfile:user_id, ซึ่งมีเฉพาะรหัสบัญชี Amazon และ รหัสไปรษณีย์, ซึ่งมีรหัสไปรษณีย์ของผู้ใช้
พารามิเตอร์ที่สองถึง อนุญาต UserForScopes: มอบหมาย: เป็นวัตถุที่ดำเนินการ AIAuthenticationDelegateprotocol, ในกรณีนี้เป็นตัวอย่างของ AMZNAuthorizeUserDelegate ระดับ.- (IBAction) onLogInButtonClicked: (id) ผู้ส่ง {
// ทำการอนุญาตการเรียก SDK เพื่อรับโทเค็นการเข้าถึงที่ปลอดภัย
// สำหรับผู้ใช้
// ในขณะที่ทำการโทรครั้งแรก คุณสามารถระบุพื้นฐานขั้นต่ำได้
// ขอบเขตที่จำเป็น// การร้องขอขอบเขตทั้งสองสำหรับผู้ใช้ปัจจุบัน
NSArray *requestScopes =
[NSArray arrayWithObjects:@”profile”, @”postal_code”, ไม่มี];AMZNAuthorizeUserDelegate* ผู้รับมอบสิทธิ์ =
[AIMobileLib อนุญาต UserForScopes:requestScopes มอบหมาย: มอบหมาย];
[[AMZNAuthorizeUserDelegate จัดสรร] initWithParentController:self];เพิ่มส่วนหัวการใช้งานการมอบหมายของคุณในการเรียกชั้นเรียน
อนุญาต UserForScopes:. เช่นampเลอ:#import “AMZNAuthorizeUserDelegate.h” - สร้าง AMZNGetProfileผู้แทน
AMZNGetProfileผู้รับมอบสิทธิ์ ชื่อของเราสำหรับคลาสที่ใช้
AIAuthenticationDelegateprotocol, และจะประมวลผลผลการ รับโปรfile: เรียก. ชอบ อนุญาตUserForScopes:ผู้รับมอบสิทธิ์:, getProfile: รองรับการ ร้องขอให้สำเร็จ: และ ขอDidFail: วิธีการโปรโตคอล ร้องขอให้สำเร็จ: ได้รับไฟล์ APIResult วัตถุด้วยโปรfile ข้อมูลในคุณสมบัติผลลัพธ์ ขอDidFail: ได้รับไฟล์ AIEข้อผิดพลาด วัตถุที่มีข้อมูลเกี่ยวกับข้อผิดพลาดในคุณสมบัติข้อผิดพลาด
หากต้องการสร้างคลาสผู้รับมอบสิทธิ์จากการประกาศคลาสปกติ ให้นำเข้า
AIAuthenticationDelegate.hand เพิ่มโปรโตคอลในการประกาศในส่วนหัวของชั้นเรียนของคุณ file:#นำเข้า @อินเทอร์เฟซ AMZNGetProfileผู้รับมอบสิทธิ์ : NSObject @end - ดำเนินการ ขอทำสำเร็จ:สำหรับ ของคุณ AMZNAuthorizeUserDelegate In ร้องขอสำเร็จ:, เรียก รับโปรfile: เพื่อเรียกลูกค้า profile. รับโปรfile:, ชอบ authorizeUserForScopes:delegate: ใช้โปรโตคอล AIAuthenticationDelegate
– (เป็นโมฆะ) คำขอ DidSucceed: (APIResult *) apiResult {
// รหัสของคุณหลังจากที่ผู้ใช้อนุญาตแอปพลิเคชันสำหรับ
// ขอขอบเขต//โหลดใหม่. view ตัวควบคุมพร้อมข้อมูลระบุตัวตนของผู้ใช้
// เนื่องจากขณะนี้ผู้ใช้เข้าสู่ระบบสำเร็จแล้วAMZNGetProfileผู้รับมอบสิทธิ์* ผู้รับมอบสิทธิ์ =
[[[AMZNGetProfileมอบหมายการจัดสรร] initWithParentController:parentViewตัวควบคุม] ปล่อยอัตโนมัติ];
[AIMobileLib getProfile:มอบหมาย];
}เพิ่มส่วนหัวการใช้งานการมอบหมายของคุณในการเรียกชั้นเรียน รับโปรfile- ฟอเร็กซ์ampเลอ:
#นำเข้า “AMZNGetProfileผู้แทน.h” - ดำเนินการ ร้องขอให้สำเร็จ: สำหรับคุณ AMZNGetProfileผู้แทน
ขอทำสำเร็จ:มี สองงานหลัก: เพื่อดึงโปรfile ข้อมูลจาก ผล API, และส่งข้อมูลไปยัง UI
เพื่อดึงโปรfile ข้อมูลจาก ผล API, เข้าถึงคุณสมบัติของผลลัพธ์ สำหรับ รับโปรfile:การตอบสนอง, คุณสมบัตินั้นจะมีพจนานุกรมของค่าคุณสมบัติสำหรับผู้ใช้มืออาชีพfile คุณสมบัติ. มืออาชีพfile คุณสมบัติคือ ชื่ออีเมล และ user_id สำหรับมือโปรfile ขอบเขตและ
รหัสไปรษณีย์ สำหรับ รหัสไปรษณีย์ ขอบเขต.– (เป็นโมฆะ) คำขอ DidSucceed: (APIResult *) apiResult {
//รับโปรfile คำขอสำเร็จแล้ว แกะโปรfile ข้อมูล
//แล้วส่งต่อให้ผู้ปกครอง view ผู้ควบคุมชื่อ NSString* = [(NSDictionary*)apiResult.result
objectForKey:@”ชื่อ”];
อีเมล NSString* = [(NSDictionary*)apiResult.result
objectForKey:@”อีเมล”];
NSString* user_id = [(NSDictionary*)apiResult.result
objectForKey:@”user_id”];
NSString* postal_code = [(NSDictionary*)apiResult.result
objectForKey:@”postal_code”];//ส่งข้อมูลไปที่ view ผู้ควบคุม
} - ดำเนินการ ขอDidFail: สำหรับคุณ AMZNGetProfileผู้แทน
ขอDidFail: รวมถึง APIข้อผิดพลาด วัตถุที่มีรายละเอียดเกี่ยวกับข้อผิดพลาด showLogInPageis วิธีการสมมุติฐานที่จะรีเซ็ตหลัก view คอนโทรลเลอร์เพื่อแสดงปุ่มเข้าสู่ระบบด้วย Amazon– (เป็นโมฆะ) requestDidFail: (APIError *) errorResponse {
// รับโปรfile คำขอล้มเหลวสำหรับมืออาชีพfile ขอบเขต.
// หากรหัสข้อผิดพลาด = kAIApplicationNotAuthorized
// อนุญาตให้ผู้ใช้เข้าสู่ระบบอีกครั้ง
ถ้า (errorResponse.error.code == kAIApplicationNotAuthorized) {
// แสดงปุ่มอนุญาตผู้ใช้
[พ่อแม่Viewตัวควบคุม showLogInPage];
}
อื่น {
// จัดการข้อผิดพลาดอื่นๆ
[[[[UIAlertView จัดสรร] initWithTitle:@”” ข้อความ: [NSString
stringWithFormat:@”เกิดข้อผิดพลาดกับข้อความ: %@”,
errorResponse.error.message] ผู้รับมอบสิทธิ์:ไม่มี
cancelButtonTitle:@”OK”otherButtonTitles:nil] autorelease] show];
}
} - ดำเนินการ requestDidFail:สำหรับ ของคุณ AMZNAuthorizeUserDelegate
– (เป็นโมฆะ) requestDidFail: (APIError *) errorResponse {
NSString *ข้อความ = errorResponse.error.message;
// รหัสของคุณเมื่อการอนุญาตล้มเหลว [[[[UIAlertView จัดสรร] initWithTitle:@”” ข้อความ: [NSString
stringWithFormat:@” การอนุญาตผู้ใช้ล้มเหลวโดยมีข้อความ: %@”, errorResponse.error.message] ผู้รับมอบสิทธิ์: ไม่มี
cancelButtonTitle:@”OK”otherButtonTitles:nil] autorelease] show];
}10. นำไปใช้ ใบสมัคร: เปิดURL:sourceApplication:คำอธิบายประกอบ: ในชั้นเรียนในโครงการของคุณที่จัดการ UIAApplicationDelegate โปรโตคอล (โดยค่าเริ่มต้น นี่จะเป็น AppDelegateclass ในโครงการของคุณ) เมื่อแอปแสดงหน้าเข้าสู่ระบบของ Amazon และผู้ใช้เข้าสู่ระบบเสร็จแล้ว แอปจะเปลี่ยนเส้นทางไปยังแอปโดยใช้ URL โครงการแอปที่ลงทะเบียนไว้ก่อนหน้านี้ การเปลี่ยนเส้นทางนั้นถูกส่งไปที่ ใบสมัคร: เปิดURL:sourceApplication:คำอธิบายประกอบ:, ซึ่งส่งคืน ใช่ ถ้าหากว่า URL ได้รับการจัดการเรียบร้อยแล้ว ที่จับเปิดURL:sourceApplication: เป็นฟังก์ชันไลบรารี SDK ที่จะจัดการการเข้าสู่ระบบด้วยการเปลี่ยนเส้นทางของ Amazon URLสำหรับคุณ ถ้า ที่จับเปิดURL:sourceApplication:ส่งคืนใช่ แล้ว URL ได้รับการจัดการ
– (BOOL) แอปพลิเคชัน: (UIApplication *) แอปพลิเคชัน
เปิดURL: (นสURL *)url
sourceApplication:(NSString *)sourceApplication
คำอธิบายประกอบ:(id)คำอธิบายประกอบ
{
//ผ่านไป. url ไปยัง SDK เพื่อแยกวิเคราะห์รหัสการอนุญาต // จาก url.
BOOL isValidRedirectSignInURL =
[AIMobileLib จัดการเปิดURL:url
ไอออนบวก sourceAppli : เปิด ceApplicati เปรี้ยว);
ถ้า ( !isValidRedirect Si gnlnURL)
กลับไม่มี;
// แอปอาจต้องการจัดการ e ด้วย url กลับใช่;
}บันทึก: วิธีการนี้เลิกใช้งานแล้วใน iOS 9 แต่ควรรวมไว้ในโปรเจ็กต์ของคุณเพื่อรักษาการรองรับผู้ใช้บนแพลตฟอร์มรุ่นเก่า สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ ใบสมัคร: เปิดURL:sourceApplication:คำอธิบายประกอบ:, ดู การอ้างอิงโปรโตคอล UIApplicationDelegate ใน developer.apple.com
ตรวจสอบการเข้าสู่ระบบของผู้ใช้เมื่อเริ่มต้น
หากผู้ใช้ล็อกอินเข้าสู่แอพของคุณปิดแอพและรีสตาร์ทแอพในภายหลังแสดงว่าแอพนั้นยังคงได้รับอนุญาตให้ดึงข้อมูล ผู้ใช้ไม่ได้ออกจากระบบโดยอัตโนมัติ เมื่อเริ่มต้นคุณสามารถแสดงผู้ใช้ว่าลงชื่อเข้าใช้หากแอปของคุณยังได้รับอนุญาต ส่วนนี้จะอธิบายวิธีการใช้งาน
getAccessTokenForScopes:withOverrideParams:มอบหมาย: เพื่อดูว่าแอปยังได้รับอนุญาตหรือไม่
- สร้าง AMZNGetAccessTokenDelegate ระดับ. AMZNGetAccessTokenDelegateimplements เดอะ AIAuthenticationDelegate โปรโตคอลและจะประมวลผลผลลัพธ์ของ
getAccessTokenForScopes:withOverrideParams:มอบหมาย: เรียก. AIAuthenticationDelegate มีสองวิธีคือ ร้องขอให้สำเร็จ: และ ขอDidFail:. ร้องขอให้สำเร็จ: ได้รับไฟล์ APIResult วัตถุที่มีข้อมูลโทเค็นในขณะที่ ขอDidFail: ได้รับไฟล์ APIข้อผิดพลาด วัตถุที่มีข้อมูลเกี่ยวกับข้อผิดพลาด#import @อินเทอร์เฟซ AMZNGetAccessTokenDelegate :NSObject
@จบ
เพิ่มส่วนหัวการใช้งานการมอบหมายของคุณในการเรียกชั้นเรียน
getAccessTokenForScopes:withOverrideParams:มอบหมาย: ฟอเร็กซ์ampเลอ:#import “AMZNGetAccessTokenDelegate.h” - เมื่อเริ่มต้นแอป ให้โทร
getAccessTokenForScopes:withOverrideParams:มอบหมาย: เพื่อดูว่าแอปพลิเคชันยังได้รับอนุญาตหรือไม่ getAccessTokenForScopes:withOverrideParams:มอบหมาย: ดึงโทเค็นการเข้าถึงดิบที่เข้าสู่ระบบด้วย Amazon ใช้เพื่อเข้าถึงผู้เชี่ยวชาญของลูกค้าfile- หากวิธีนี้สำเร็จ แอปยังคงได้รับอนุญาตและมีการโทรไปที่ รับโปรfile: ควรประสบความสำเร็จ getAccessTokenForScopes:withOverrideParams:มอบหมาย: ใช้ AIAuthenticationDelegate โปรโตคอลในลักษณะเดียวกับ อนุญาต UserForScopes: มอบหมาย:. ส่งผ่านวัตถุที่ใช้โปรโตคอลเป็นพารามิเตอร์ผู้รับมอบสิทธิ์– (เป็นโมฆะ) checkIsUserSignedIn {
AMZNGetAccessTokenDelegate* ผู้รับมอบสิทธิ์ =
[[[AMZNGetAccessTokenDelegate จัดสรร] initWithParentController:self] ปล่อยอัตโนมัติ];
NSArray *requestScopes =
[NSArray arrayWithObjects:@”profile”, @”postal_code”, ไม่มี]; [AIMobileLib getAccessTokenForScopes:requestScopes withOverrideParams:ไม่มีผู้รับมอบสิทธิ์:ผู้รับมอบสิทธิ์];
} - ดำเนินการ ร้องขอให้สำเร็จ: บนของคุณ AMZNGetAccessTokenDelegate ร้องขอให้สำเร็จ: มีงานเดียวคือโทร รับโปรfile:. อดีตนี้ampเลอ โทร รับโปรfile: โดยใช้ Listener เดียวกับที่คุณประกาศไว้ในส่วนก่อนหน้า (ดูขั้นตอนที่ 6-8)
#นำเข้า “AMZNGetProfileผู้แทน.h”
#import– (เป็นโมฆะ) คำขอ DidSucceed: (APIResult *) apiResult {
// รหัสของคุณสำหรับการใช้โทเค็นการเข้าถึงอยู่ที่นี่// เนื่องจากแอปพลิเคชันมีการอนุญาตสำหรับขอบเขตของเรา เราจึงสามารถทำได้
[AIMobileLib getProfile:มอบหมาย];
// รับผู้ใช้มืออาชีพfile.
AMZNGetProfileผู้รับมอบสิทธิ์* ผู้รับมอบสิทธิ์ = [[[AMZNGetProfileมอบหมายการจัดสรร] initWithParentController:parentViewตัวควบคุม] ปล่อยอัตโนมัติ];
} - ดำเนินการ ขอDidFail: บนของคุณ AMZNGetAccessTokenDelegate
ขอDidFail: รวมถึง APIข้อผิดพลาด ออบเจ็กต์ที่มีรายละเอียดเกี่ยวกับข้อผิดพลาด หากคุณได้รับข้อผิดพลาด คุณสามารถรีเซ็ตตัวหลักได้ view คอนโทรลเลอร์เพื่อแสดงปุ่มเข้าสู่ระบบด้วย Amazon– (เป็นโมฆะ) requestDidFail: (APIError *) errorResponse {
// รหัสของคุณเพื่อจัดการการดึงโทเค็นการเข้าถึงล้มเหลว
// หากรหัสข้อผิดพลาด = kAIApplicationNotAuthorized ให้อนุญาตผู้ใช้
// เพื่อเข้าสู่ระบบอีกครั้ง
ถ้า (errorResponse.error.code == kAIApplicationNotAuthorized) {
// แสดงปุ่มเข้าสู่ระบบด้วย Amazon
}
อื่น {
// จัดการข้อผิดพลาดอื่นๆ
[[[[UIAlertView จัดสรร] initWithTitle:@”” ข้อความ: [NSString
stringWithFormat:@”เกิดข้อผิดพลาดกับข้อความ: %@”, errorResponse.error.message] ผู้รับมอบสิทธิ์: ไม่มี
cancelButtonTitle:@”OK” otherButtonTitles:nil] autorelease] show];
}
}
การ สถานะการอนุญาตที่ชัดเจน: วิธีการจะล้างข้อมูลการอนุญาตของผู้ใช้ออกจาก AIMobileLib ที่เก็บข้อมูลท้องถิ่น ผู้ใช้จะต้องเข้าสู่ระบบอีกครั้งเพื่อให้แอปดึงข้อมูลโปรfile ข้อมูล. ใช้วิธีนี้เพื่อออกจากระบบผู้ใช้ หรือเพื่อแก้ไขปัญหาการเข้าสู่ระบบในแอป
- ประกาศก AMZNออกจากระบบผู้รับมอบสิทธิ์ นี่คือคลาสที่ใช้
AIAuthenticationDelegateprotocol เพื่อวัตถุประสงค์ของเรา เราสามารถสืบทอดคลาสจาก NSวัตถุ:
#import @อินเทอร์เฟซ AMZNLogoutDelegate NSObject
@จบ
เพิ่มส่วนหัวการใช้งานการมอบหมายของคุณในการเรียกชั้นเรียน สถานะการอนุญาตที่ชัดเจน:. เช่นampเลอ:
#import “AMZNLogoutDelegate.h” - เรียก สถานะการอนุญาตที่ชัดเจน:.
เมื่อผู้ใช้เข้าสู่ระบบสำเร็จ คุณอาจจัดเตรียมกลไกการออกจากระบบเพื่อให้สามารถล้างข้อมูลการอนุญาตของตนได้ กลไกของคุณอาจเป็นไฮเปอร์ลิงก์หรือรายการเมนู แต่สำหรับสถานการณ์นี้ เช่นampเลอจะสร้าง ออกจากระบบปุ่มวิธีการคลิก สำหรับปุ่มออกจากระบบ– (IBAction) ออกจากระบบปุ่มคลิก: (id) ผู้ส่ง {
ผู้รับมอบสิทธิ์ AMZNLogoutDelegate* = [[[AMZNLogoutDelegate alloc] initWithParentController:self] autorelease]; [AIMobileLib clearAuthorizationState:ผู้รับมอบสิทธิ์];
}พารามิเตอร์เดียวที่จะ สถานะการอนุญาตที่ชัดเจน เป็น AIAuthenticationDelegate ที่นำไปปฏิบัติ ร้องขอให้สำเร็จ: และ ขอDidFail:.
- ดำเนินการ ร้องขอสำเร็จ:. วิธีการนี้จะถูกเรียกเมื่อมีการล้างข้อมูลของผู้ใช้ จากนั้นคุณควรแสดงให้พวกเขาออกจากระบบ
– (เป็นโมฆะ) คำขอ DidSucceed: (APIResult *) apiResult {
// ตรรกะเพิ่มเติมของคุณหลังจากการอนุญาตผู้ใช้
// สถานะถูกเคลียร์แล้ว
[[[UIAlertView จัดสรร] initWithTitle:@”” ข้อความ:@”ผู้ใช้ออกจากระบบ”
ผู้รับมอบสิทธิ์: ไม่มี cancelButtonTitle:@”OK” otherButtonTitles:nil] show];
} - ดำเนินการ ขอDidFail:. วิธีการนี้จะถูกเรียกหากไม่สามารถล้างข้อมูลของผู้ใช้ออกจากแคชได้ด้วยเหตุผลบางประการ ในกรณีนั้น คุณไม่ควรแสดงว่าพวกเขาออกจากระบบแล้ว
– (เป็นโมฆะ) requestDidFail: (APIError *) errorResponse {
// ตรรกะเพิ่มเติมของคุณหลังจาก SDK ไม่สามารถล้างได้
// สถานะการอนุญาต [[[[UIAlertView จัดสรร] initWithTitle:@”” ข้อความ: [NSString
stringWithFormat:@” ผู้ใช้ออกจากระบบล้มเหลวโดยมีข้อความ: %@”,
errorResponse.error.message] ผู้รับมอบสิทธิ์:ไม่มี
cancelButtonTitle:@”OK” otherButtonTitles:nil] autorelease] show];
}
ทดสอบการรวมของคุณ
เปิดแอปของคุณในอุปกรณ์ iOS หรือโปรแกรมจำลองและยืนยันว่าคุณสามารถเข้าสู่ระบบด้วยข้อมูลรับรอง Amazon.com ของคุณ
บันทึก: เมื่อทดสอบบนเครื่องจำลอง iOS10 คุณอาจเห็นข้อความแสดงข้อผิดพลาด APIKey สำหรับแอปพลิเคชันไม่ถูกต้องสำหรับคำขอ authorizeUserForScopes หรือรหัสข้อผิดพลาดที่ไม่รู้จักสำหรับคำขอ clearAuthorizationState มันคือ รู้จักบั๊กกับ Apple ซึ่งเกิดขึ้นเมื่อ SDK พยายามเข้าถึงพวงกุญแจ จนกว่า Apple จะแก้ไขจุดบกพร่อง คุณสามารถแก้ไขได้โดยเปิดใช้งานการแชร์พวงกุญแจสำหรับแอปของคุณภายใต้แท็บความสามารถในเป้าหมายของแอป จุดบกพร่องนี้ส่งผลต่อเครื่องจำลองเท่านั้น คุณสามารถทดสอบบนอุปกรณ์ iOS10 จริงได้โดยไม่ต้องใช้วิธีแก้ปัญหาใดๆ
เข้าสู่ระบบด้วย Amazon คู่มือเริ่มต้นใช้งานสำหรับ iOS เวอร์ชัน 2.1.2 – ดาวน์โหลด [ปรับให้เหมาะสม]
เข้าสู่ระบบด้วย Amazon คู่มือเริ่มต้นใช้งานสำหรับ iOS เวอร์ชัน 2.1.2 – ดาวน์โหลด