คีย์การลงชื่อสมัครใช้และ API

หากต้องการใช้ Google Awareness API คุณต้องเพิ่มคีย์ API ของ Google ลงในแอป โดยคีย์ API ที่คุณต้องใช้คือคีย์ API ของ Android

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

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

คุณต้องทำตามขั้นตอนหลายขั้นตอนเพื่อรับคีย์สำหรับแอป ซึ่งมีรายละเอียดอธิบายไว้ในคำแนะนำนี้ และสรุปได้ดังนี้

  1. รับข้อมูลเกี่ยวกับใบรับรองของแอป
  2. ลงทะเบียนโปรเจ็กต์ใน Google Developers Console และเพิ่ม User Context API เป็นบริการสำหรับโปรเจ็กต์
  3. ขอคีย์
  4. เพิ่มคีย์ลงในแอป โดยเพิ่มองค์ประกอบลงในไฟล์ Manifest ของแอป

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

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

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

ดูข้อมูลเพิ่มเติมเกี่ยวกับ keytool ได้ใน เอกสารประกอบของ Oracle

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

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

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

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

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

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

      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
ใบรับรองรุ่น

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

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

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

    keytool -list -keystore your_keystore_name
          
  3. แทนที่ your_keystore_name ด้วยเส้นทางแบบเต็ม และชื่อของคีย์สโตร์ รวมนามสกุล .keystore ป้อนรหัสผ่านของคีย์สโตร์เมื่อระบบแจ้ง จากนั้น keytool จะแสดงนามแฝงทั้งหมดในคีย์สโตร์
  4. ป้อนคำสั่งต่อไปนี้ในเทอร์มินัลหรือ Command Prompt

          keytool -list -v -keystore your_keystore_name -alias your_alias_name
          
  5. แทนที่ your_keystore_name ด้วยเส้นทางและชื่อของคีย์สโตร์ที่สมบูรณ์ในตัวเอง รวมนามสกุล .keystore
  6. แทนที่ 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 ตัวที่คั่นด้วยโคลอน

รับคีย์ API จาก Google Developers Console

หากต้องการเริ่มต้นใช้งาน Google Awareness API ให้คลิกปุ่มรับคีย์ ปุ่มนี้จะลิงก์ไปยัง Google Developers Console ซึ่งจะแนะนำคุณตลอดกระบวนการและเปิดใช้งาน Awareness API โดยอัตโนมัติ

รับคีย์

หรือทำตามขั้นตอนต่อไปนี้เพื่อรับคีย์ API

  1. ไปที่ Google Developers Console
  2. เลือกโปรเจ็กต์หรือสร้างโปรเจ็กต์ใหม่
  3. คลิกดำเนินการต่อ เพื่อเปิดใช้ Awareness API
  4. ในหน้า "ข้อมูลเข้าสู่ระบบ" ให้สร้างคีย์ Android และตั้งค่าข้อมูลเข้าสู่ระบบ API

  5. ในกล่องโต้ตอบ "สร้างคีย์" คุณต้องจำกัดการใช้งานไว้ที่แอป Android โดยป้อนลายนิ้วมือ 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.awareness-example
    
  6. คลิกสร้าง คีย์ API ของ Android ใหม่จะปรากฏในรายการคีย์ API สำหรับโปรเจ็กต์ คีย์ API คือสตริงของอักขระ เช่น สตริงต่อไปนี้

    AIzaSyBdVl-cTICSwYKrZ95LoVuw7dbMuDt1KG0
    

เมื่อมีคีย์ API แล้ว คุณสามารถเพิ่มคีย์ลงในไฟล์ Manifest ของแอปได้ตามที่ อธิบายไว้ในคู่มือเริ่มต้นใช้งาน

เปิดใช้งาน API เพิ่มเติม

Awareness API ช่วยให้คุณเข้าถึงข้อมูลตามบริบทได้หลายประเภท เช่น บีคอน หากต้องการใช้ข้อมูลประเภทเหล่านี้ คุณต้องเปิดใช้ API ที่เกี่ยวข้องใน Google Developers Console

บริการ เมธอดของ Awareness API API ที่จะเปิดใช้
บีคอน SnapshotApi.getBeaconState(), FenceApi.BeaconFence Nearby Messages API