ฟีเจอร์การลงทะเบียนความภักดีและการลงชื่อเข้าใช้ช่วยให้ผู้ใช้ค้นหา โปรแกรมสะสมคะแนน และเข้าร่วมหรือลงชื่อเข้าใช้บัญชีของพวกเขาจาก Google Wallet ระบบจะนำผู้ใช้ไปยังเว็บไซต์ที่เหมาะกับอุปกรณ์เคลื่อนที่เพื่อดำเนินการ หลังจากนั้น ลูกค้าจะเพิ่มบัตรลงใน Google Wallet ได้
คู่มือนี้จะให้ภาพรวมของขั้นตอนการติดตั้งใช้งานที่จําเป็น เพื่อเปิดใช้โปรแกรมสะสมคะแนนสำหรับฟีเจอร์นี้
ภาพรวม
หากต้องการเริ่มต้นใช้งาน ให้ตรวจสอบว่าคุณได้ตั้งค่าโปรเจ็กต์ไว้ก่อนหน้านี้และมีสิทธิ์เข้าถึง API ของ Google Wallet
คุณต้องทำตาม 4 ขั้นตอนต่อไปนี้เพื่อใช้ฟีเจอร์การลงทะเบียนและการลงชื่อเข้าใช้ สำหรับโปรแกรมสะสมคะแนนของคุณ
- ตั้งค่าชั้นเรียนทดสอบใน Google Wallet เพื่อทดสอบขั้นตอนการลงทะเบียน/ลงชื่อเข้าใช้
- พัฒนาหน้าลงทะเบียน/ลงชื่อเข้าใช้ที่ใช้ Google Wallet
SharedDataType
- ส่งบัตรสะสมคะแนนไปยัง Google Wallet หลังจากลงทะเบียน/ลงชื่อเข้าใช้
- ขอการยืนยันและเปิดใช้งาน
ตั้งค่าชั้นเรียนการสอบใน Google Wallet
ระบุ URL การลงทะเบียนและการลงชื่อเข้าใช้ โลโก้โปรแกรม และช่องผู้ใช้ที่เลือก จากนั้นให้ทำดังนี้
ใช้ช่องที่ฝัง discoverableProgram
ช่องใน
loyaltyclass
เพื่อตั้งค่า
ค่าที่เหมาะสม
ตั้งค่าใน discoverableProgram
เพื่อสร้างเวอร์ชันร่างของ
โปรแกรมสะสมคะแนนที่เปิดใช้การลงทะเบียน/การลงชื่อเข้าใช้ ยืนยันว่าผู้ทดสอบจะเห็นข้อมูลนี้
ผู้ทดสอบมีสิทธิ์เข้าถึง Google Pay และ Wallet Console สำหรับรายละเอียดเกี่ยวกับวิธีแชร์
สิทธิ์เข้าถึง Google Pay และ Wallet Console กับผู้อื่น โปรดดูที่
ดูข้อมูลเกี่ยวกับหน้าผู้ใช้
เพื่อยืนยันฟังก์ชันการทำงานของการใช้งานในระหว่างการพัฒนาให้เสร็จสมบูรณ์ ให้ติดต่อเราโดยใช้วิดเจ็ต "ติดต่อฝ่ายสนับสนุน" ใน Google Pay และ Wallet Console ขณะอยู่ใน ในคอนโซล ให้เลือก Google Wallet API ในหัวข้อ แล้วเลือกการลงชื่อเข้าใช้/ลงทะเบียนโปรแกรมสะสมคะแนนใน หัวข้อย่อย
พัฒนาหน้าการลงทะเบียนและการลงชื่อเข้าใช้ที่ใช้ข้อมูลผู้ใช้ Google Wallet
เมื่อผู้ใช้เลือกที่จะลงชื่อเข้าใช้หรือลงทะเบียนโปรแกรมสะสมคะแนน ระบบจะนำพวกเขาตรงไปยังหน้าที่ปรับแต่งบนเว็บไซต์ของคุณ ขั้นตอนการลงทะเบียนหรือลงชื่อเข้าใช้ หากผู้ใช้เลือกที่จะลงทะเบียน Google Wallet จะขอให้ผู้ใช้อนุมัติการแชร์ข้อมูลของผู้ใช้กับคุณ
คุณต้องระบุหน้าใดหน้าหนึ่งจาก 2 หน้า หรือทั้ง 2 หน้าเพื่อช่วยให้ผู้ใช้ดำเนินการเหล่านี้ให้เสร็จสิ้นได้
- URL การลงชื่อเข้าใช้ที่ผู้ใช้ลงชื่อเข้าใช้บัญชีที่มีอยู่ได้
- URL การลงทะเบียนที่ผู้ใช้สร้างบัญชีใหม่ได้
หน้าลงชื่อเข้าใช้และการลงทะเบียนของคุณต้องเป็นไปตามข้อกำหนดต่อไปนี้
- มอบประสบการณ์ที่เหมาะกับอุปกรณ์เคลื่อนที่
- ลดจำนวนช่องที่ต้องกรอกระหว่างขั้นตอนการลงทะเบียนให้เหลือน้อยที่สุด
- อนุญาตให้ผู้ใช้ลงชื่อเข้าใช้หรือลงทะเบียนให้เสร็จสมบูรณ์ภายในหน้าเดียว
- ใช้การเข้ารหัส
HTTPS
กับใบรับรองที่ถูกต้องเพื่อให้แน่ใจว่าข้อมูลผู้ใช้ ส่งอย่างปลอดภัย - ตรวจสอบให้แน่ใจว่าหน้าลงชื่อเข้าใช้และการลงทะเบียนมีความพร้อมในการทำงานอย่างน้อย 99.9%
นอกเหนือจากข้อกำหนดข้างต้นแล้ว เรายังขอแนะนำให้คุณอนุญาตผู้ใช้ ลงทะเบียนเข้าร่วมโปรแกรมสะสมคะแนนโดยไม่ต้องกรอกแบบฟอร์มใดๆ หรือ ให้หน้าเว็บเป็นไปตามข้อกำหนดในการให้บริการของคุณเท่านั้น
- คุณสามารถสร้างบัญชีโดยใช้ประโยชน์จากข้อมูลผู้ใช้ที่ระบุไว้ใน
SharedDataType
และส่งบัตรสะสมคะแนน ของพวกเขาคืนทันที - คุณสามารถส่งอีเมลรหัสผ่านที่สามารถใช้งานได้เพียงครั้งเดียวหรือลิงก์ให้ผู้ใช้ทางอีเมลได้ในภายหลัง เพื่อกำหนดค่ารหัสผ่านและรายละเอียดบัญชีที่ไม่บังคับ
- ซึ่งจะช่วยลดโอกาสที่ผู้ใช้จะออกจากขั้นตอนการลงทะเบียน เนื่องจากทุกๆ ขั้นตอนเพิ่มเติม อาจนำไปสู่การหยุดกลางคันเพิ่มเติม
เมื่อแสดงหน้าลงชื่อเข้าใช้หรือลงทะเบียน Google Wallet จะสร้าง
มี Android WebView และมีการส่งคำขอ POST
ไปยังข้อมูลที่คุณให้ไว้
URL มีการระบุข้อมูลผู้ใช้ในพารามิเตอร์ SharedDataType
ซึ่งรวมอยู่ในคำขอ POST
โดยใช้
ประเภทเนื้อหาของแอปพลิเคชัน/x-www-form-urlencrypted และ
การเข้ารหัส UTF-8
ค่าของ SharedDataType
คือออบเจ็กต์ JSON ที่เข้ารหัส Base64
ขึ้นอยู่กับการดำเนินการที่ผู้ใช้เลือกและช่องที่คุณระบุ คำขอจากผู้ใช้ ออบเจ็กต์ JSON อาจมีฟิลด์ต่อไปนี้
ช่อง | การลงทะเบียน |
---|---|
อีเมล | ✓ |
ชื่อ | ✓ |
นามสกุล | ✓ |
บรรทัดที่อยู่ [1-3] | ✓ |
city | ✓ |
รัฐ | ✓ |
รหัสไปรษณีย์ | ✓ |
country | ✓ |
โทรศัพท์ | ✓ |
ดูออบเจ็กต์ JSON ตัวอย่างที่ถอดรหัสแล้วที่ด้านล่าง
ที่อยู่ในSharedDataType
ทรัพยากร
{ "firstName": "Jane", "lastName": "Doe", "addressLine1": "1600 Amphitheatre Pkwy", "addressLine2": "Apt 123", "addressLine3": "Attn:Jane", "city": "Mountain View", "state": "CA", "zipcode": "94043", "country": "US", "email": "jane.doe@example.com", "phone": "555-555-5555" }
นำบัตรสะสมคะแนนไปยัง Google Wallet คืนทันที
เมื่อตรวจสอบสิทธิ์ (ลงชื่อเข้าใช้) หรือหลังจากสร้างบัญชี (การลงทะเบียน) แล้ว หน้าเว็บของคุณ ควรส่งบัตรสะสมคะแนนของผู้ใช้กลับไปยัง Google Wallet ทันที
คุณสามารถส่งบัตรสะสมคะแนนกลับไปยัง Google Wallet ได้โดยเปลี่ยนเส้นทางไปยัง ที่ตามโครงสร้างด้านล่าง
https://pay.google.com/gp/v/save/{jwt_generated}
ความยาวที่ปลอดภัยสำหรับ URL คือ 2,000 อักขระ ลิงก์ควร ให้ยังคงต่ำกว่าขีดจำกัดนี้ ออบเจ็กต์ที่เข้ารหัสใน JWT ควรมีขนาดเล็กโดยประกอบด้วย ข้อมูลที่เฉพาะเจาะจงสำหรับผู้ใช้ พยายามเก็บข้อมูลส่วนใหญ่ไว้ในคลาสของออบเจ็กต์ ก่อนที่จะสร้าง JWT สำหรับวัตถุขนาดใหญ่และไม่พอดีกับขีดจำกัด ให้พิจารณา สร้างออบเจ็กต์ใน Google Wallet API และส่งเฉพาะรหัสออบเจ็กต์ใน JWT
ขั้นตอนการสื่อสารทั่วไป
ภาพประกอบขั้นตอนการสื่อสารสำหรับผู้ใช้ที่ลงทะเบียนหรือลงชื่อเข้าใช้เรียบร้อยแล้วใน รูปภาพต่อไปนี้ การดำเนินการทั้งหมดระหว่าง "เซิร์ฟเวอร์ของคุณ" เป็นความรับผิดชอบของคุณในการดำเนินการ
ขอการยืนยันและเปิดใช้งาน
หลังจากทำงานพัฒนาและทดสอบขั้นตอนการลงทะเบียน/ลงชื่อเข้าใช้เสร็จแล้ว ให้ส่งคำขอ ผ่านทาง Google Pay และ Wallet Console ติดต่อทีมสนับสนุน วิดเจ็ต
หลังจากตรวจสอบการติดตั้งใช้งานของคุณอย่างสมบูรณ์ ซึ่งเป็นการยืนยันว่าฟังก์ชันการทำงานที่ถูกต้องใน เมื่อใช้ร่วมกับแอป Google Wallet ฟีเจอร์การลงทะเบียน/ลงชื่อเข้าใช้ในโปรแกรมสะสมคะแนนจะ เปิดตัวต่อสาธารณะสำหรับโปรแกรมสะสมคะแนนของคุณ ซึ่งจะช่วยให้ผู้ใช้ทุกคนเห็น โปรแกรมและใช้ประโยชน์จากฟังก์ชันนี้
เพื่อให้มั่นใจว่าผู้ใช้จะได้รับประสบการณ์การใช้งานที่ดีที่สุด เราจึงตรวจสอบการลงทะเบียน/ลงชื่อเข้าใช้ของคุณเป็นประจำ จะมีการดำเนินการเพื่อให้เป็นไปตามข้อกำหนดเกี่ยวกับฟีเจอร์อย่างต่อเนื่อง คุณจะได้รับแจ้งในกรณีที่มีความคลาดเคลื่อนและฟังก์ชันการลงชื่อเข้าใช้/ลงทะเบียน อาจถูกปิดใช้จนกว่าปัญหาจะได้รับการแก้ไข
คำถามที่พบบ่อย
- มีข้อกำหนดสำหรับรูปภาพที่ใช้ในโปรแกรมสะสมคะแนนของฉันไหม
- ใช่ รูปภาพควรโฮสต์ไว้ที่ตำแหน่ง
HTTPS
เนื่องจากข้อมูลดังกล่าวจะไม่ปรากฏใน Google Wallet
- ใช่ รูปภาพควรโฮสต์ไว้ที่ตำแหน่ง
- มีเครื่องมือที่ช่วยให้การติดตั้งใช้งานและการแก้ไขข้อบกพร่องของ JWT ง่ายขึ้นไหม
- ใช่ แพลตฟอร์มต่างๆ เช่น www.jwt.io ให้คุณถอดรหัส และแก้ไขข้อบกพร่องของโทเค็นในระหว่างกระบวนการพัฒนา ซึ่งคุณจะสามารถยืนยัน เนื้อหาที่คุณได้ส่ง โปรดทราบว่า Google ไม่มีความเกี่ยวข้องทางธุรกิจและไม่ได้ ขอแนะนำบุคคลที่สามดังกล่าวเป็นพิเศษ
- เราจะจัดการข้อมูล SharedDataType ที่เข้ารหัส Base64 อย่างถูกต้องได้อย่างไร
- ตรวจสอบว่าคุณใช้การเข้ารหัส UTF-8 ตลอดทั้งกระบวนการ สตริง JSON คือ UTF-8 แรกที่เข้ารหัสและเข้ารหัสภายหลังโดยใช้ android.util.Base64 พร้อมตัวเลือก NO_WRAP และ URL_SAFE ซึ่งสอดคล้องกับ RFC 3548 ส่วนที่ 4