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

ภาพรวม

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

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

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

การรับรหัสสําหรับแอปมีหลายขั้นตอน ขั้นตอนเหล่านี้แสดง ไว้ด้านล่าง

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

    keytool -list -keystore your_keystore_name

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

  2. ป้อนข้อมูลต่อไปนี้ที่เทอร์มินัลหรือพรอมต์คําสั่ง

    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 ของใบรับรอง ลายนิ้วมือคือลําดับเลขฐานสิบหก 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. คลิกสร้าง รหัสไคลเอ็นต์และข้อมูลลับใหม่ของ Android OAuth 2.0 จะปรากฏในรายการรหัสของโปรเจ็กต์ รหัสไคลเอ็นต์ OAuth 2.0 คือสตริงอักขระต่างๆ ดังนี้

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com