รับรหัสไคลเอ็นต์ OAuth 2.0

ภาพรวม

หากต้องการใช้ Google Fit สำหรับ Android คุณต้องมีรหัสไคลเอ็นต์ OAuth 2.0 สำหรับแอปพลิเคชัน Android

แอป Android ทั้งหมดจะลงนามด้วยใบรับรองดิจิทัลที่คุณมีคีย์ส่วนตัว ดูข้อมูลเพิ่มเติมเกี่ยวกับใบรับรองดิจิทัลได้ที่คู่มือ Android เกี่ยวกับการลงนามแอปพลิเคชัน

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

การขอรหัสสำหรับแอปต้องทำตามขั้นตอนต่างๆ ซึ่งมีรายละเอียดดังนี้

  1. ค้นหาข้อมูลใบรับรองของแอป
  2. สร้างหรือแก้ไขโปรเจ็กต์ในคอนโซล Google API
  3. ขอรหัสไคลเอ็นต์ OAuth 2.0

ค้นหาข้อมูลใบรับรองของแอป

คีย์ API จะอิงตามรูปแบบย่อของใบรับรองดิจิทัลของแอป ซึ่งเรียกว่าลายนิ้วมือ SHA-1 หากต้องการแสดงลายนิ้วมือ SHA-1 ของใบรับรอง ให้ตรวจสอบก่อนว่าคุณใช้ใบรับรองที่ถูกต้อง คุณอาจมีใบรับรอง 2 รายการดังนี้

  • ใบรับรองสำหรับการแก้ไขข้อบกพร่อง: เครื่องมือ Android SDK จะสร้าง ใบรับรองนี้โดยอัตโนมัติเมื่อคุณสร้างบิลด์การแก้ไขข้อบกพร่อง ใช้ใบรับรองนี้กับแอปที่คุณกำลังทดสอบเท่านั้น อย่าพยายามเผยแพร่แอปที่ลงนามด้วยใบรับรองสำหรับการแก้ไขข้อบกพร่อง ใบรับรองสำหรับการแก้ไขข้อบกพร่องมีคำอธิบายโดยละเอียดเพิ่มเติมใน หัวข้อการลงชื่อเข้าใช้ ในโหมดแก้ไขข้อบกพร่อง ในเอกสารประกอบสำหรับนักพัฒนาแอป Android
  • ใบรับรองการเผยแพร่: Android SDK Tools จะสร้าง ใบรับรองนี้เมื่อคุณสร้างบิลด์ที่เผยแพร่ นอกจากนี้ คุณยังสร้างใบรับรองนี้ได้โดยใช้โปรแกรม keytool ใช้ใบรับรองนี้เมื่อ คุณพร้อมที่จะเผยแพร่แอปสู่สาธารณะ

ทำตามขั้นตอนด้านล่างเพื่อแสดงลายนิ้วมือ SHA-1 ของใบรับรองโดยใช้ โปรแกรม keytool ที่มีพารามิเตอร์ -v ดูข้อมูลเพิ่มเติมเกี่ยวกับ Keytool ได้ใน เอกสารประกอบของ Oracle

ใบรับรองสำหรับการแก้ไขข้อบกพร่อง

แสดงลายนิ้วมือของใบรับรองสำหรับการแก้ไขข้อบกพร่อง

  1. ค้นหาไฟล์คีย์สโตร์สำหรับการแก้ไขข้อบกพร่อง ชื่อไฟล์คือ debug.keystore และระบบจะสร้างไฟล์นี้ขึ้นเมื่อคุณสร้าง โปรเจ็กต์เป็นครั้งแรก โดยค่าเริ่มต้น ระบบจะจัดเก็บไฟล์นี้ไว้ในไดเรกทอรีเดียวกับไฟล์ Android Virtual Device (AVD) ดังนี้

    • macOS และ Linux: ~/.android/
    • Windows Vista และ Windows 7: C:\Users\your_user_name\.android\
  2. แสดงรายการลายนิ้วมือ SHA-1 โดยทำดังนี้

    • สำหรับ Linux หรือ macOS ให้เปิดหน้าต่างเทอร์มินัลแล้วป้อนคำสั่งต่อไปนี้

      keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
    • สำหรับ Windows Vista และ Windows 7 ให้เรียกใช้คำสั่งต่อไปนี้

      keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

คุณควรเห็นเอาต์พุตที่คล้ายกับตัวอย่างต่อไปนี้

Alias name: androiddebugkey
Creation date: Jan 01, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4aa9b300
Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033
Certificate fingerprints:
     MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9
     SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75
     Signature algorithm name: SHA1withRSA
     Version: 3
ใบรับรองรุ่น

แสดงลายนิ้วมือของใบรับรองรุ่น

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

    keytool -list -keystore your_keystore_name

    แทนที่ your_keystore_name ด้วยเส้นทางแบบเต็ม และชื่อของคีย์สโตร์ รวมถึง.keystore นามสกุล ระบบจะขอให้คุณป้อนรหัสผ่านของคีย์สโตร์ จากนั้น keytool จะแสดงนามแฝงทั้งหมดในคีย์สโตร์

  2. ป้อนคำสั่งต่อไปนี้ในเทอร์มินัลหรือ Command Prompt

    keytool -list -v -keystore your_keystore_name -alias your_alias_name

    แทนที่ your_keystore_name ด้วยเส้นทางแบบเต็ม และชื่อของคีย์สโตร์ รวมถึง.keystore นามสกุล แทนที่ your_alias_name ด้วยนามแฝงที่คุณ กำหนดให้กับใบรับรองเมื่อสร้าง

คุณควรเห็นเอาต์พุตที่คล้ายกับตัวอย่างต่อไปนี้

Alias name: <alias_name>
Creation date: Feb 02, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4cc9b300
Valid from: Mon Feb 02 08:01:04 UTC 2013 until: Mon Feb 02 18:05:04 PST 2033
Certificate fingerprints:
    MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6B:AC:F9
    SHA1: BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:90:AF:A1:66:6E:44:5D:75
    Signature algorithm name: SHA1withRSA
    Version: 3

บรรทัดที่ขึ้นต้นด้วย SHA1 จะมีลายนิ้วมือ SHA-1 ของใบรับรอง ลายนิ้วมือคือลำดับของตัวเลขฐานสิบหก 2 หลัก 20 ตัวที่คั่นด้วยโคลอน

ขอรหัสไคลเอ็นต์ OAuth 2.0 ในคอนโซล Google API

ทำตามขั้นตอนต่อไปนี้เพื่อสร้างหรือแก้ไขโปรเจ็กต์สำหรับแอปในคอนโซล Google API, เปิดใช้ Fitness API และขอรหัสไคลเอ็นต์ OAuth 2.0

หากต้องการรับคำแนะนำตลอดกระบวนการและเปิดใช้ Fitness API โดยอัตโนมัติ ให้คลิก

รับรหัสไคลเอ็นต์

หรือทำตามขั้นตอนต่อไปนี้เพื่อเปิดใช้ Fitness API ในคอนโซล Google API และรับรหัสไคลเอ็นต์ OAuth 2.0

  1. ไปที่ คอนโซล Google API
  2. เลือกโปรเจ็กต์หรือสร้างโปรเจ็กต์ใหม่ ใช้โปรเจ็กต์เดียวกันสำหรับแอปเวอร์ชัน Android และ REST
  3. คลิกดำเนินการต่อ เพื่อเปิดใช้ Fitness API
  4. คลิกไปที่ข้อมูลเข้าสู่ระบบ
  5. คลิกข้อมูลเข้าสู่ระบบใหม่ แล้วเลือกรหัสไคลเอ็นต์ OAuth
  6. ในส่วนประเภทแอปพลิเคชัน ให้เลือกAndroid
  7. ในกล่องโต้ตอบที่ปรากฏขึ้น ให้ป้อนลายนิ้วมือ SHA-1 และชื่อแพ็กเกจของแอป เช่น

    BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75

    com.example.android.fit-example

  8. คลิกสร้าง รหัสไคลเอ็นต์และรหัสลับ OAuth 2.0 ของ Android ใหม่จะปรากฏในรายการรหัสสำหรับโปรเจ็กต์ รหัสไคลเอ็นต์ OAuth 2.0 คือสตริงอักขระที่มีลักษณะดังนี้

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com