เริ่มต้นใช้งานบริการเกมของ Play สำหรับภาษา C++ บน Android

คู่มือสําหรับนักพัฒนาแอปนี้จะแสดงวิธีคอมไพล์และเรียกใช้เกม C++ บน Android ที่ใช้ Google Play Games Services API ก่อนเริ่มต้น ให้ดาวน์โหลดและกำหนดค่าข้อกำหนดต่อไปนี้

คู่มือนักพัฒนาแอปนี้ใช้ Android Native Development Kit (NDK) หากคุณไม่คุ้นเคยกับ NDK ให้อ่านเอกสารประกอบและตัวอย่าง NDK ก่อนดำเนินการต่อ

ขั้นตอนที่ 1: ตั้งค่าสภาพแวดล้อม

  1. ดาวน์โหลด Android SDK และ Android NDK แล้วแตกไฟล์ลงในเครื่อง ในสภาพแวดล้อม ให้ตั้งค่า SDK_ROOT เป็นตำแหน่งของโฟลเดอร์ Android SDK และ NDK_ROOT เป็นตำแหน่งของโฟลเดอร์ Android NDK
  2. ดาวน์โหลดเกมตัวอย่าง C++ คู่มือนักพัฒนาซอฟต์แวร์นี้เรียกตำแหน่งของตัวอย่างในเครื่องว่า SAMPLES_DIR
  3. ดาวน์โหลด SDK สำหรับ C++ ของบริการเกมของ Google Play แตกไฟล์ SDK ลงในเครื่องสำหรับพัฒนาซอฟต์แวร์ ในสภาพแวดล้อม ให้ตั้งค่าตัวแปร NDK_MODULE_PATH ให้ชี้ไปยังไดเรกทอรีด้านบนไดเรกทอรี gpg-cpp-sdk คุณควรมีโครงสร้างไดเรกทอรีดังต่อไปนี้
    NDK_MODULE_PATH/
    gpg-cpp-sdk/
  4. เปิด Eclipse หากยังไม่ได้ดำเนินการ ให้บอก Eclipse ว่าคุณติดตั้ง NDK ไว้ที่ใดโดยคลิกค่ากําหนด > Android > NDK
  5. นําเข้าโปรเจ็กต์คลังบริการ Google Play ไปยังเวิร์กสเปซ Eclipse

    1. ใน Eclipse ให้คลิก File > Import > Android > Existing Android Code into Workspace
    2. เลือก SDK_ROOT/extras/google/google_play_services/libproject/google-play-services_lib โดยที่ SDK_ROOT คือตำแหน่งของ Android SDK
    3. คลิกเสร็จสิ้น
  6. นําเข้าโปรเจ็กต์ตัวอย่างแบบมินิมอลมายังเวิร์กสเปซ Eclipse

    1. ใน Eclipse ให้คลิก File > Import > Android > Existing Android Code into Workspace
    2. เลือก SAMPLES_DIR/samples-android/minimalist
    3. คลิกเสร็จสิ้น
  7. คลิกขวาที่โปรเจ็กต์ MinimalistActivity แล้วคลิกพร็อพเพอร์ตี้ ในส่วน Android ให้เลื่อนลงไปที่ส่วนคลัง และตรวจสอบว่ามีการอ้างอิงโปรเจ็กต์ google-play-services_lib อย่างถูกต้อง หากไม่ ให้นำข้อมูลอ้างอิงออกแล้วเพิ่มอีกครั้งจากพื้นที่ทำงาน

Eclipse จะคอมไพล์ซอร์สโค้ด Java และ Android ของโปรเจ็กต์โดยอัตโนมัติ แต่จะต้องคอมไพล์โค้ดเนทีฟในโฟลเดอร์ jni แยกต่างหาก หากต้องการดำเนินการนี้ด้วยตนเอง ให้ไปที่โฟลเดอร์ jni แล้วเรียกใช้ ndk-build อย่าลืมดำเนินการนี้หลังจากทําการเปลี่ยนแปลงในโฟลเดอร์ jni

ตอนนี้โปรเจ็กต์ควรคอมไพล์แล้ว แต่ยังไม่ทำงาน คุณต้องกำหนดค่าเกมใน Google Play Console ก่อน

ขั้นตอนที่ 2: ตั้งค่าเกมใน Google Play Console

สร้างรายการสำหรับเกมใน Google Play Console ซึ่งจะเป็นการเปิดใช้บริการเกมสําหรับแอปพลิเคชันของคุณ และสร้างรหัสไคลเอ็นต์ OAuth 2.0 หากคุณยังไม่มี

  1. สร้างรายการสำหรับเกมโดยทำตามขั้นตอนที่อธิบายไว้ในการตั้งค่าบริการเกมของ Google Play
  2. ใน AndroidManifest.xml ให้เปลี่ยนแอตทริบิวต์ package ของแท็ก <manifest> เป็นชื่อแพ็กเกจที่คุณเลือกไว้เมื่อตั้งค่า Google Play Console คุณอาจต้องแก้ไขการอ้างอิงบางอย่างทั่วทั้งโปรเจ็กต์หลังจากทําการเปลี่ยนแปลงนี้ (โดยเฉพาะคลาส R ที่สร้างขึ้น)
  3. เปิด res/values/ids.xml แล้ววางรหัสแอปของคุณไว้ที่นั่น โปรดทราบว่ารหัสแอปไม่เหมือนกับรหัสไคลเอ็นต์ แต่เป็นตัวเลขข้างชื่อเกมในหน้ารายละเอียดเกมของ Google Play Console

ขั้นตอนที่ 3: เรียกใช้ตัวอย่าง

หากต้องการเรียกใช้ตัวอย่าง คุณจะต้องมีอุปกรณ์ Android หรือโปรแกรมจำลองที่ติดตั้งบริการ Google Play ไว้

  1. เรียกใช้ ndk-build เพื่อคอมไพล์โค้ดเนทีฟ
  2. ใน Eclipse ให้คลิกเรียกใช้ > เรียกใช้เป็น > แอปพลิเคชัน Android แล้วเรียกใช้ตัวอย่างในอุปกรณ์
  3. เมื่อตัวอย่างเพลงเปิดขึ้น ให้แตะที่ใดก็ได้บนหน้าจอ คุณควรเห็นโลโก้ Google Play Games ปรากฏขึ้น หากกําหนดค่าแอปอย่างถูกต้องแล้ว ระบบจะแจ้งให้คุณลงชื่อเข้าใช้

ไม่บังคับ: บิลด์โดยอัตโนมัติด้วย Eclipse

ขั้นตอนต่อไปนี้แสดงวิธีกำหนดค่า Eclipse ให้เรียกใช้ ndk-build โดยอัตโนมัติเมื่อคุณทำการเปลี่ยนแปลงไฟล์ในโฟลเดอร์ jni

  1. คลิกขวาที่โปรเจ็กต์ MinimalistActivity แล้วคลิกพร็อพเพอร์ตี้ ในหน้าต่างพร็อพเพอร์ตี้ ให้เลือกแผงเครื่องมือสร้าง
  2. คลิกใหม่เพื่อเพิ่มโปรแกรมสร้างใหม่ แล้วเลือกโปรแกรม จากนั้นคลิกตกลง
  3. ป้อน "NDK Builder" ในช่องชื่อ
  4. ในส่วนตำแหน่ง ให้คลิกเรียกดูระบบไฟล์ แล้วไปที่ไดเรกทอรี NDK_ROOT แล้วเลือกคำสั่ง ndk-build
  5. ในส่วนไดเรกทอรีทํางาน ให้คลิกเรียกดูพื้นที่ทํางาน แล้วเลือกโฟลเดอร์ MinimalistActivity project
  6. คลิกแท็บรีเฟรช ตรวจสอบว่าได้เลือกช่องรีเฟรชทรัพยากรเมื่อเสร็จสิ้น
  7. เลือกปุ่มตัวเลือกทรัพยากรที่เฉพาะเจาะจง แล้วคลิกระบุทรัพยากร ในกล่องโต้ตอบที่ปรากฏขึ้น ให้เลือกโฟลเดอร์ jni ในส่วน MinimalActivity
  8. คลิกใช้ แล้วคลิกตกลงเพื่อสร้าง Builder ให้เสร็จสิ้น

ตอนนี้ทุกครั้งที่คุณแก้ไขไฟล์ภายในโฟลเดอร์ jni นั้น Eclipse จะเรียกใช้ ndk-build และพิมพ์เอาต์พุตไปยังคอนโซล Eclipse