รับรหัสไคลเอ็นต์ 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 จะสร้างใบรับรองนี้เมื่อคุณสร้างบิลด์ที่เผยแพร่ นอกจากนี้ คุณยังสร้างใบรับรองนี้โดยใช้โปรแกรม keytool ได้ด้วย ใช้ใบรับรองนี้เมื่อคุณพร้อมที่จะเผยแพร่แอปให้คนทั่วโลกได้ใช้

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

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

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

  1. ค้นหาไฟล์คีย์สโตร์สำหรับแก้ไขข้อบกพร่อง ชื่อไฟล์คือ debug.keystore และจะสร้างขึ้นเมื่อคุณสร้างโปรเจ็กต์เป็นครั้งแรก โดยค่าเริ่มต้น ระบบจะจัดเก็บไว้ในไดเรกทอรีเดียวกับไฟล์อุปกรณ์เสมือน Android (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. ค้นหาไฟล์คีย์สโตร์ของใบรับรองรุ่น Keystore ของรุ่นไม่มีตำแหน่งหรือชื่อเริ่มต้น หากคุณไม่ได้ระบุคีย์เมื่อสร้างแอปเพื่อเผยแพร่ บิลด์จะปล่อย .apk ของคุณไว้โดยไม่ได้ลงนาม และคุณจะต้องลงนามก่อนจึงจะเผยแพร่ได้ สำหรับใบรับรองสำหรับการเผยแพร่ คุณยังต้องมีชื่อแทนของใบรับรองและรหัสผ่านสำหรับคีย์สโตร์และใบรับรองด้วย คุณสามารถแสดงรายการชื่อแทนของคีย์ทั้งหมดในคีย์สโตร์ได้โดยป้อนคำสั่งต่อไปนี้

    keytool -list -keystore your_keystore_name

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

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

    keytool -list -v -keystore your_keystore_name -alias your_alias_name

    แทนที่ your_keystore_name ด้วยเส้นทางและชื่อที่สมบูรณ์ในตัวเองของ Keystore รวมถึงนามสกุล .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 ของใบรับรอง ลายนิ้วมือคือลำดับของเลขฐาน 16 จำนวน 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