ก่อนเริ่มต้น
ก่อนที่คุณจะเริ่มใช้ Places SDK สำหรับ Android คุณต้องมีโปรเจ็กต์ที่มีบัญชีสำหรับการเรียกเก็บเงินและเปิดใช้ Places SDK สำหรับ Android ดูข้อมูลเพิ่มเติมได้ที่ตั้งค่าใน Cloud Console
การสร้างคีย์ API
คีย์ API คือตัวระบุที่ไม่ซ้ำกันซึ่งจะตรวจสอบสิทธิ์คำขอที่เชื่อมโยงกับโปรเจ็กต์เพื่อวัตถุประสงค์ในการใช้งานและการเรียกเก็บเงิน คุณต้องมีคีย์ API ที่เชื่อมโยงกับโปรเจ็กต์อย่างน้อย 1 รายการ
วิธีสร้างคีย์ API
คอนโซล
-
ไปที่หน้า Google Maps Platform > ข้อมูลเข้าสู่ระบบ
-
ในหน้าข้อมูลเข้าสู่ระบบ ให้คลิกสร้างข้อมูลเข้าสู่ระบบ > คีย์ API
กล่องโต้ตอบคีย์ API ที่สร้างจะแสดงคีย์ API ที่คุณสร้างใหม่ -
คลิกปิด
คีย์ API ใหม่จะปรากฏในหน้าข้อมูลเข้าสู่ระบบในส่วนคีย์ API
(อย่าลืมจำกัดคีย์ API ก่อนนำไปใช้ในเวอร์ชันที่ใช้งานจริง)
Cloud SDK
gcloud alpha services api-keys create \ --project "PROJECT" \ --display-name "DISPLAY_NAME"
อ่านเพิ่มเติมเกี่ยวกับ Google Cloud SDK , การติดตั้ง Cloud SDK และคำสั่งต่อไปนี้
การจำกัดคีย์ API
Google ขอแนะนำอย่างยิ่งให้คุณจำกัดคีย์ API โดยจำกัดการใช้เฉพาะ API ที่จำเป็นสำหรับแอปพลิเคชันของคุณเท่านั้น การจำกัดคีย์ API จะเพิ่มความปลอดภัยให้กับแอปพลิเคชันของคุณโดยการป้องกันคีย์จากคำขอที่ไม่ได้รับอนุญาต ดูข้อมูลเพิ่มเติมได้ในแนวทางปฏิบัติแนะนำด้านความปลอดภัยของ API
เมื่อจำกัดคีย์ API คุณต้องระบุลายนิ้วมือสำหรับใบรับรอง SHA-1 ของคีย์การลงชื่อที่ใช้ในการลงนามแอปพลิเคชัน ใบรับรองมี 2 ประเภท ได้แก่
- ใบรับรองการแก้ไขข้อบกพร่อง: ใช้ใบรับรองประเภทนี้กับแอปที่คุณกำลังทดสอบและโค้ดอื่นๆ ที่ไม่มีการใช้งานจริงเท่านั้น อย่าพยายามเผยแพร่แอปที่รับรองด้วยใบรับรองการแก้ไขข้อบกพร่อง เครื่องมือ Android SDK จะสร้างใบรับรองนี้โดยอัตโนมัติเมื่อคุณเรียกใช้บิลด์การแก้ไขข้อบกพร่อง
- ใบรับรองรุ่น: ใช้ใบรับรองนี้เมื่อคุณพร้อมที่จะเผยแพร่แอปใน App Store เครื่องมือ Android SDK จะสร้างใบรับรองนี้เมื่อคุณเรียกใช้บิลด์ที่เผยแพร่
ดูข้อมูลเพิ่มเติมเกี่ยวกับการรับรองแอปพลิเคชัน Android และใบรับรองได้ที่คำแนะนำในการลงนามแอป
สำหรับวิธีค้นหาลายนิ้วมือของใบรับรองที่ลงนาม โปรดดูข้อมูลอ้างอิงด้านล่าง
- หากคุณใช้ Play App Signing โปรดดูการทำงานร่วมกับผู้ให้บริการ API
- หากคุณจัดการคีย์ Signing ของคุณเอง โปรดดูการลงนามแอปพลิเคชันด้วยตนเองหรือดูวิธีการสำหรับสภาพแวดล้อมของบิลด์
วิธีจำกัดคีย์ API
คอนโซล
-
ไปที่หน้า Google Maps Platform > ข้อมูลเข้าสู่ระบบ
- เลือกคีย์ API ที่ต้องการตั้งค่าข้อจำกัด หน้าพร็อพเพอร์ตี้คีย์ API จะปรากฏขึ้น
- กำหนดข้อจำกัดต่อไปนี้ในส่วนข้อจำกัดสำคัญ
- ข้อจำกัดแอปพลิเคชัน:
- เลือกแอป Android
- คลิก + เพิ่มชื่อแพ็กเกจและลายนิ้วมือ
- ป้อนชื่อแพ็กเกจและลายนิ้วมือของใบรับรอง SHA-1 ตัวอย่างเช่น
com.example.android.mapexample
BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
- ข้อจำกัด API:
- คลิกจำกัดคีย์
- เลือก Places API หรือ Places API (ใหม่) จากเมนูแบบเลื่อนลงเลือก API โดยเลือกทั้ง 2 อย่างไม่ได้ หาก Places API ไม่อยู่ในรายการ คุณต้องenable
- คลิกบันทึกเพื่อสิ้นสุดการเปลี่ยนแปลง
Cloud SDK
Places SDK สำหรับ Android (ใหม่)
แสดงรายการคีย์ที่มีอยู่
gcloud services api-keys list --project="PROJECT"
ล้างข้อจำกัดที่มีอยู่ของคีย์ที่มีอยู่
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --clear-restrictions
กำหนดข้อจำกัดใหม่สำหรับคีย์ที่มีอยู่
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --api-target="places.googleapis.com" --allowed-application="sha1_fingerprint=SHA1_FINGERPRINT,package_name=ANDROID_PACKAGE_NAME"
อ่านเพิ่มเติมเกี่ยวกับ Google Cloud SDK , การติดตั้ง Cloud SDK และคำสั่งต่อไปนี้
Places SDK สำหรับ Android
แสดงรายการคีย์ที่มีอยู่
gcloud services api-keys list --project="PROJECT"
ล้างข้อจำกัดที่มีอยู่ของคีย์ที่มีอยู่
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --clear-restrictions
กำหนดข้อจำกัดใหม่สำหรับคีย์ที่มีอยู่
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --api-target="places-backend.googleapis.com" --allowed-application="sha1_fingerprint=SHA1_FINGERPRINT,package_name=ANDROID_PACKAGE_NAME"
อ่านเพิ่มเติมเกี่ยวกับ Google Cloud SDK , การติดตั้ง Cloud SDK และคำสั่งต่อไปนี้
ขั้นตอนถัดไป
ตอนนี้คุณมีคีย์ API แล้ว ให้สร้างและกำหนดค่าโปรเจ็กต์ตามที่อธิบายไว้ในตั้งค่าโปรเจ็กต์ Android Studio