หากการลงชื่อเข้าใช้ด้วยการแตะเพียงครั้งเดียวตรงกับความต้องการของคุณให้ลองใช้มันแทน One Tap มีประสบการณ์การใช้งานที่อัปเดตและการปรับปรุงอื่น ๆ
หน้านี้ได้รับการแปลโดย Cloud Translation API
Switch to English

ขั้นตอนการรวม Android

ในการผสานรวม Smart Lock สำหรับรหัสผ่านเข้ากับแอป Android ของคุณคุณต้องเพิ่มการโทรไปยัง Credentials API ในขั้นตอนการเริ่มต้นใช้งานและการลงชื่อเข้าใช้ของแอป แผนภาพต่อไปนี้แสดงขั้นตอนของแอป Android ทั่วไปที่ใช้ Smart Lock สำหรับรหัสผ่าน

แม้ว่าจะมีหลายวิธีในการผสานรวม Smart Lock สำหรับรหัสผ่านให้ประสบความสำเร็จและลักษณะเฉพาะของการผสานรวมจะขึ้นอยู่กับโครงสร้างและประสบการณ์ของผู้ใช้แอปขั้นตอนต่อไปนี้แนะนำสำหรับแอปส่วนใหญ่ แอปที่ใช้ขั้นตอนนี้มีข้อดีด้านประสบการณ์ผู้ใช้ดังนี้

  • ผู้ใช้ที่มีอยู่ของบริการของคุณที่มีข้อมูลรับรองเดียวที่บันทึกไว้จะถูกลงชื่อเข้าใช้ทันทีและพวกเขาจะไปที่มุมมองการลงชื่อเข้าใช้โดยตรงเมื่อพวกเขาเปิดแอป
  • ผู้ใช้ที่มีข้อมูลรับรองหลายรายการบันทึกไว้หรือปิดใช้งานการลงชื่อเข้าใช้อัตโนมัติจำเป็นต้องตอบสนองต่อกล่องโต้ตอบเดียวก่อนที่จะไปที่มุมมองการลงชื่อเข้าใช้ของแอป
  • ผู้ใช้ที่ไม่มีข้อมูลรับรองที่บันทึกไว้หรือยังไม่ได้ลงทะเบียนสามารถเลือกชื่อและอีเมลได้ด้วยการแตะเพียงครั้งเดียวและจะถูกส่งไปยังมุมมองการลงชื่อเข้าใช้หรือการลงชื่อสมัครใช้อย่างชาญฉลาดโดยกรอกข้อมูลนี้ไว้ล่วงหน้า
  • เมื่อผู้ใช้ออกจากระบบแอปจะตรวจสอบว่าไม่ได้ลงชื่อเข้าใช้โดยอัตโนมัติ

แผนผังขั้นตอนการลงชื่อเข้าใช้ Smart Lock

ดึงข้อมูลรับรอง

  1. เมื่อแอปเริ่มทำงานหากไม่มีผู้ใช้ลงชื่อเข้าใช้ให้เรียก CredentialsClient.request()
  2. หาก Task สำเร็จรับข้อมูลประจำตัวของผู้ใช้ด้วย getResult().getCredential() และใช้เพื่อลงชื่อเข้าใช้
  3. หาก Task ล้มเหลวและข้อยกเว้นคืออินสแตนซ์ของ ResolvableApiException และ getStatusCode() ส่งคืน RESOLUTION_REQUIRED อินพุตของผู้ใช้จะต้องเลือกข้อมูลรับรอง เรียก startResolutionForResult() เพื่อแจ้งให้ผู้ใช้เลือกบัญชีที่บันทึกไว้จากนั้นเรียกใช้ getParcelableExtra(Credential.EXTRA_KEY) เพื่อรับข้อมูลประจำตัวของผู้ใช้และใช้เพื่อลงชื่อเข้าใช้

บันทึกข้อมูลรับรอง

  1. หาก Task ล้มเหลวด้วย ApiException และ getStatusCode() ส่งคืน SIGN_IN_REQUIRED แสดงว่าผู้ใช้ไม่มีข้อมูลรับรองที่บันทึกไว้และต้องลงชื่อเข้าใช้หรือลงทะเบียนด้วยตนเองโดยใช้ขั้นตอนการลงชื่อเข้าใช้หรือขั้นตอนการลงทะเบียนปัจจุบันของคุณ หลังจากที่ผู้ใช้ลงชื่อเข้าใช้สำเร็จแล้วคุณสามารถเปิดโอกาสให้ผู้ใช้บันทึกข้อมูลรับรองสำหรับการเรียกค้นในอนาคต (ขั้นตอนที่ 5)

    คุณสามารถช่วยให้ผู้ใช้ลงชื่อเข้าใช้หรือลงทะเบียนได้เร็วขึ้นและง่ายขึ้นโดยดึงคำแนะนำในการลงชื่อเข้าใช้เช่นที่อยู่อีเมลของผู้ใช้ ผู้ใช้สามารถเลือกคำใบ้และข้ามการพิมพ์ข้อมูลรับรองได้ หากแอปของคุณต้องการให้ผู้ใช้ลงชื่อเข้าใช้คุณอาจเลือกที่จะดึงคำใบ้ทันทีหลังจากที่คำขอข้อมูลรับรองเริ่มต้นล้มเหลว (มิฉะนั้นคุณสามารถรอจนกว่าผู้ใช้จะเริ่มขั้นตอนการลงชื่อเข้าใช้หรือขั้นตอนการลงชื่อสมัครใช้)

    1. เรียกใช้ CredentialsClient.getHintPickerIntent() และเริ่มจุดประสงค์เพื่อแจ้งให้ผู้ใช้เลือกบัญชีจากนั้นเรียก getParcelableExtra(Credential.EXTRA_KEY) เพื่อรับคำแนะนำการลงชื่อเข้าใช้
    2. หากรหัสผู้ใช้ของคำใบ้ตรงกับผู้ใช้ที่มีอยู่ให้กรอกแบบฟอร์มลงชื่อเข้าใช้ล่วงหน้าและให้ผู้ใช้ป้อนรหัสผ่านเพื่อลงชื่อเข้าใช้
    3. หากรหัสผู้ใช้ของคำใบ้ไม่ตรงกับผู้ใช้ที่มีอยู่ให้กรอกแบบฟอร์มลงทะเบียนล่วงหน้าด้วย ID และชื่อของผู้ใช้และปล่อยให้ผู้ใช้สร้างบัญชีใหม่
  2. หลังจากผู้ใช้ลงชื่อเข้าใช้หรือสร้างบัญชีสำเร็จแล้วให้บันทึก ID ผู้ใช้และรหัสผ่านด้วย CredentialsClient.save()

    หากผู้ใช้ลงชื่อเข้าใช้ด้วยผู้ให้บริการข้อมูลประจำตัวแบบรวมศูนย์เช่น Google Sign-In ให้สร้างออบเจ็กต์ Credential โดยมีที่อยู่อีเมลของผู้ใช้เป็น ID และระบุผู้ให้บริการข้อมูลประจำตัวด้วย setAccountType

ออกจากระบบ

  1. เมื่อผู้ใช้ออกจากระบบให้โทรไปที่ CredentialsClient.disableAutoSignIn() เพื่อป้องกันไม่ให้ผู้ใช้ลงชื่อเข้าใช้อีกครั้งในทันทีการปิดใช้งานการลงชื่อเข้าใช้อัตโนมัติยังช่วยให้ผู้ใช้สามารถสลับระหว่างบัญชีต่างๆได้อย่างง่ายดายตัวอย่างเช่นระหว่างบัญชีที่ทำงานและบัญชีส่วนตัวหรือระหว่างบัญชีต่างๆ บนอุปกรณ์ที่แชร์โดยไม่ต้องป้อนข้อมูลการลงชื่อเข้าใช้ซ้ำ

พร้อมที่จะรวม Smart Lock สำหรับรหัสผ่านเข้ากับแอปของคุณแล้วหรือยัง เริ่มต้น