ข้อควรทราบก่อนที่จะเริ่มต้น
คู่มือนักพัฒนาซอฟต์แวร์นี้จะแสดงวิธีคอมไพล์และเรียกใช้เกม C++ บน Android ที่ใช้ Google Play Game Services API ก่อนจะเริ่ม ให้ดาวน์โหลดและกําหนดค่าข้อกําหนดต่อไปนี้
- Android NDK, เวอร์ชัน 14 ขึ้นไป
- Android SDK v10 ขึ้นไปและ Eclipse ADT เวอร์ชันล่าสุด
- อุปกรณ์ต้องใช้ Android 4.0 (API ระดับ 14) ขึ้นไป
- SDK บริการ Google Play เวอร์ชันล่าสุด
คู่มือนักพัฒนาซอฟต์แวร์นี้ใช้ Android Native Development Kit (NDK) หากคุณไม่คุ้นเคยกับ NDK โปรดดูเอกสารและตัวอย่าง NDK ก่อนดําเนินการต่อ
ขั้นตอนที่ 1: ตั้งค่าสภาพแวดล้อม
- ดาวน์โหลด Android SDK และ Android NDK แล้วดึงข้อมูลไปยังเครื่องของคุณ ในสภาพแวดล้อมของคุณ ให้ตั้งค่า
SDK_ROOT
ไปยังตําแหน่งของโฟลเดอร์ Android SDK และNDK_ROOT
ไปยังตําแหน่งของโฟลเดอร์ Android NDK - ดาวน์โหลดเกมตัวอย่าง C++ คู่มือนักพัฒนาซอฟต์แวร์นี้หมายถึงตําแหน่งของตัวอย่างในเครื่องว่า
SAMPLES_DIR
- ดาวน์โหลด SDK บริการเกมของ Google Play ดึงข้อมูล SDK ไปยังเครื่องพัฒนาซอฟต์แวร์ของคุณ ในสภาพแวดล้อมของคุณ ให้ตั้งค่าตัวแปร
NDK_MODULE_PATH
ให้ชี้ไปที่ไดเรกทอรี เหนือไดเรกทอรีgpg-cpp-sdk
คุณควรมีโครงสร้างไดเรกทอรีต่อไปนี้NDK_MODULE_PATH/ gpg-cpp-sdk/
- เปิด Eclipse หากยังไม่ได้ดําเนินการ ให้แจ้ง Eclipse ที่ติดตั้ง NDK โดยคลิกค่ากําหนด > Android > NDK
นําเข้าโปรเจ็กต์ไลบรารีบริการ Google Play ไปยังพื้นที่ทํางาน Eclipse
- ใน Eclipse ให้คลิกไฟล์ > นําเข้า > Android > รหัส Android ที่มีอยู่ลงใน Workspace
- เลือก
SDK_ROOT/extras/google/google_play_services/libproject/google-play-services_lib
โดยที่SDK_ROOT
คือตําแหน่งที่ตั้งของ Android SDK - คลิกเสร็จสิ้น
นําเข้าโปรเจ็กต์ตัวอย่างสไตล์มินิมอลมายังพื้นที่ทํางาน Eclipse
- ใน Eclipse ให้คลิกไฟล์ > นําเข้า > Android > รหัส Android ที่มีอยู่ลงใน Workspace
- เลือก
SAMPLES_DIR/samples-android/minimalist
- คลิกเสร็จสิ้น
คลิกขวาที่โปรเจ็กต์ MinimalistActivity แล้วคลิกพร็อพเพอร์ตี้ ในส่วน Android ให้เลื่อนลงไปที่ส่วนไลบรารี แล้วตรวจสอบว่าโปรเจ็กต์ google-play-services_lib ได้รับการอ้างอิงอย่างถูกต้อง หากไม่ ให้นําการอ้างอิงออกและเพิ่มอีกครั้งจากพื้นที่ทํางาน
วงรีจะรวบรวมแหล่งที่มาของ Java และ Android ของโปรเจ็กต์โดยอัตโนมัติ แต่จะต้องคอมไพล์โค้ดเนทีฟในโฟลเดอร์ jni
แยกต่างหาก หากต้องการดําเนินการด้วยตนเอง ให้ไปที่โฟลเดอร์ jni
แล้วเรียกใช้ ndk-build
อย่าลืมทําเช่นนี้หลังจากที่ทําการเปลี่ยนแปลงภายในโฟลเดอร์ jni
แล้ว
ขณะนี้โปรเจ็กต์ของคุณควรคอมไพล์แล้ว แต่โปรเจ็กต์จะยังใช้งานไม่ได้ คุณต้องกําหนดค่าเกมใน Google Play Console ก่อน
ขั้นตอนที่ 2: ตั้งค่าเกมใน Google Play Console
สร้างรายการเกมใน Google Play Console การดําเนินการนี้จะเปิดใช้บริการเกมสําหรับแอปพลิเคชัน และสร้างรหัสไคลเอ็นต์ OAuth 2.0 หากคุณยังไม่มีรหัส
- สร้างรายการเกมโดยทําตามขั้นตอนที่อธิบายไว้ในการตั้งค่าบริการเกมของ Google Play
- ใน
AndroidManifest.xml
ให้เปลี่ยนแอตทริบิวต์package
ของแท็ก<manifest>
เป็นชื่อแพ็กเกจที่คุณเลือกไว้เมื่อตั้งค่า Google Play Console คุณอาจต้องแก้ไขการอ้างอิงบางรายการทั่วทั้งโปรเจ็กต์หลังจากทําการเปลี่ยนแปลงนี้ (โดยเฉพาะคลาสR
ที่สร้างขึ้น) - เปิด
res/values/ids.xml
และวางรหัสแอปไว้ที่นั้น โปรดทราบว่ารหัสแอปไม่เหมือนกับรหัสไคลเอ็นต์ แต่เป็นตัวเลขข้างชื่อเกมในหน้ารายละเอียดเกมของ Google Play Console
ขั้นตอนที่ 3: เรียกใช้ตัวอย่าง
หากต้องการเรียกใช้ตัวอย่าง คุณจะต้องมีอุปกรณ์ Android หรือโปรแกรมจําลองที่ติดตั้งบริการ Google Play ไว้ ดังนี้
- เรียกใช้
ndk-build
เพื่อรวบรวมโค้ดแบบเนทีฟ - ใน Eclipse ให้คลิก Run > Run As > แอปพลิเคชัน Android แล้วเรียกใช้ตัวอย่างในอุปกรณ์
- เมื่อตัวอย่างเปิดขึ้นมา ให้แตะที่ใดก็ได้ในฉาก คุณจะเห็นโลโก้ Google Play Games ปรากฏขึ้น หากกําหนดค่าแอปถูกต้องแล้ว คุณจะได้รับข้อความแจ้งให้ลงชื่อเข้าใช้
ไม่บังคับ: การสร้างอัตโนมัติด้วยวงรี
ขั้นตอนต่อไปนี้แสดงวิธีกําหนดค่า Eclipse ให้ทํางาน ndk-build
โดยอัตโนมัติเมื่อคุณทําการเปลี่ยนแปลงในไฟล์ในโฟลเดอร์ jni
- คลิกขวาที่โปรเจ็กต์ MinimalistActivity แล้วคลิกพร็อพเพอร์ตี้ ในหน้าต่างพร็อพเพอร์ตี้ ให้เลือกแผงเครื่องมือสร้าง
- คลิก New เพื่อเพิ่มเครื่องมือสร้างใหม่และเลือก Program จากนั้นคลิก OK
- ป้อน "NDK Builder" ในช่องชื่อ
- ในส่วน Location ให้คลิกเรียกดูระบบไฟล์ แล้วไปที่ไดเรกทอรี
NDK_ROOT
แล้วเลือกคําสั่งndk-build
- ในส่วน Working Directory ให้คลิก browse Workspace แล้วเลือกโฟลเดอร์โปรเจ็กต์ MinimalistActivity
- คลิกแท็บรีเฟรช ตรวจสอบว่าเลือกช่องรีเฟรชทรัพยากรเมื่อเสร็จแล้วแล้ว
- เลือกปุ่มตัวเลือกแหล่งข้อมูลที่เฉพาะเจาะจง จากนั้นคลิกระบุทรัพยากร ในกล่องโต้ตอบผลลัพธ์ ให้เลือกโฟลเดอร์
jni
ในส่วน MinimalActivity - คลิกใช้ แล้วคลิกตกลงเพื่อสร้างเครื่องมือสร้างให้เสร็จสิ้น
ทุกครั้งที่แก้ไขไฟล์ในโฟลเดอร์ jni
eclipse จะเรียกใช้ ndk-build
และพิมพ์เอาต์พุตไปยัง Eclipse Console