इस डेवलपर गाइड में, Android पर C++ गेम को कॉम्पाइल और चलाने का तरीका बताया गया है. यह गेम, Google Play की गेम सेवाओं के एपीआई का इस्तेमाल करता है. शुरू करने से पहले, यहां दी गई ज़रूरी शर्तें डाउनलोड और कॉन्फ़िगर करें:
- Android एनडीके, रिविज़न 14 या इसके बाद का वर्शन.
- Android SDK टूल का वर्शन 10 या इसके बाद का और Eclipse ADT टूल का नया वर्शन.
- डिवाइस में Android 4.0 (एपीआई लेवल 14) या इसके बाद का वर्शन होना चाहिए.
- Google Play services SDK टूल का सबसे नया वर्शन.
डेवलपर के लिए बनी इस गाइड में, Android नेटिव डेवलपमेंट किट (NDK) का इस्तेमाल किया गया है. अगर आपको एनडीके के बारे में जानकारी नहीं है, तो आगे बढ़ने से पहले एनडीके के दस्तावेज़ और सैंपल देखें.
पहला चरण: अपना एनवायरमेंट सेट अप करना
- Android SDK और Android NDK डाउनलोड करें और उन्हें अपनी मशीन पर निकालें. अपने एनवायरमेंट में,
SDK_ROOT
को अपने Android SDK टूल फ़ोल्डर की जगह पर औरNDK_ROOT
को अपने Android NDK टूल फ़ोल्डर की जगह पर सेट करें. - C++ में बनाए गए सैंपल गेम डाउनलोड करें. डेवलपर के लिए बनी इस गाइड में, आपकी मशीन पर सैंपल की जगह को
SAMPLES_DIR
कहा गया है. - Google Play Games services C++ SDK डाउनलोड करें. एसडीके को अपनी डेवलपमेंट मशीन पर निकालें. अपने एनवायरमेंट में, वैरिएबल
NDK_MODULE_PATH
कोgpg-cpp-sdk
डायरेक्ट्री के ऊपर मौजूद डायरेक्ट्री पर ले जाने के लिए सेट करें. आपके पास यह डायरेक्ट्री स्ट्रक्चर होना चाहिए:NDK_MODULE_PATH/ gpg-cpp-sdk/
- Eclipse खोलें. अगर आपने पहले से ऐसा नहीं किया है, तो Eclipse को बताएं कि आपने NDK कहां इंस्टॉल किया है. इसके लिए, प्राथमिकताएं > Android > NDK पर क्लिक करें.
Google Play services लाइब्रेरी प्रोजेक्ट को अपने Eclipse वर्कस्पेस में इंपोर्ट करें.
- Eclipse में, फ़ाइल > इंपोर्ट करें > Android > मौजूदा Android कोड को फ़ाइल फ़ोल्डर में पर क्लिक करें.
SDK_ROOT/extras/google/google_play_services/libproject/google-play-services_lib
चुनें जहांSDK_ROOT
आपके Android SDK टूल की जगह है.- पूरा करें पर क्लिक करें.
कम से कम सुविधाओं वाले सैंपल प्रोजेक्ट को अपने Eclipse वर्कस्पेस में इंपोर्ट करें.
- Eclipse में, फ़ाइल > इंपोर्ट करें > Android > मौजूदा Android कोड को फ़ाइल फ़ोल्डर में पर क्लिक करें.
SAMPLES_DIR/samples-android/minimalist
को चुनें.- पूरा करें पर क्लिक करें.
MinimalistActivity प्रोजेक्ट पर राइट क्लिक करें और प्रॉपर्टी पर क्लिक करें. Android में, नीचे की ओर स्क्रोल करके लाइब्रेरी सेक्शन पर जाएं. साथ ही, पक्का करें कि google-play-services_lib प्रोजेक्ट का रेफ़रंस सही तरीके से दिया गया हो. अगर ऐसा नहीं होता है, तो रेफ़रंस को हटाएं और अपने वर्कस्पेस से फिर से जोड़ें.
Eclipse आपके प्रोजेक्ट के Java और Android सोर्स को अपने-आप कंपाइल कर देगा. हालांकि, jni
फ़ोल्डर में मौजूद नेटिव कोड को अलग से कंपाइल करना होगा. मैन्युअल तरीके से ऐसा करने के लिए, jni
फ़ोल्डर पर जाएं और ndk-build
चलाएं. jni
फ़ोल्डर में कोई बदलाव करने के बाद, ऐसा करना न भूलें.
अब आपका प्रोजेक्ट कंपाइल हो जाना चाहिए. हालांकि, यह अभी काम नहीं करेगा. आपको सबसे पहले, Google Play Console में अपने गेम को कॉन्फ़िगर करना होगा.
दूसरा चरण: Google Play Console में गेम सेट अप करना
Google Play Console में अपने गेम के लिए एंट्री बनाएं. इससे आपके ऐप्लिकेशन के लिए Games की सेवाएं चालू हो जाती हैं. साथ ही, अगर आपके पास पहले से कोई OAuth 2.0 क्लाइंट आईडी नहीं है, तो यह एक क्लाइंट आईडी बना देता है.
- Google Play Games services सेट अप करना में बताए गए तरीके का पालन करके, अपने गेम के लिए एंट्री बनाएं.
AndroidManifest.xml
में,<manifest>
टैग केpackage
एट्रिब्यूट को उस पैकेज के नाम में बदलें जिसे आपने Google Play Console सेट अप करते समय चुना था. यह बदलाव करने के बाद, आपको पूरे प्रोजेक्ट में कुछ रेफ़रंस ठीक करने पड़ सकते हैं. खास तौर पर, जनरेट की गईR
क्लास में.res/values/ids.xml
खोलें और वहां अपना ऐप्लिकेशन आईडी डालें. ध्यान दें कि ऐप्लिकेशन आईडी और क्लाइंट आईडी एक जैसे नहीं होते. यह Google Play Console के गेम की जानकारी पेज पर, आपके गेम के नाम के बगल में मौजूद नंबर होता है.
तीसरा चरण: सैंपल चलाना
सैंपल चलाने के लिए, आपको कोई Android डिवाइस या ऐसा एमुलेटर चाहिए जिसमें Google Play services इंस्टॉल हो:
- नेटिव कोड को कंपाइल करने के लिए,
ndk-build
चलाएं. - Eclipse में, रन > इस तौर पर चलाएं > Android ऐप्लिकेशन पर क्लिक करें और अपने डिवाइस पर सैंपल चलाएं.
- सैंपल खुलने पर, स्क्रीन पर कहीं भी टैप करें. आपको Google Play Games का लोगो दिखेगा. अगर आपने अपने ऐप्लिकेशन को सही तरीके से कॉन्फ़िगर किया है, तो आपको साइन इन करने के लिए कहा जाएगा.
ज़रूरी नहीं: Eclipse की मदद से अपने-आप बिल्ड होना
यहां दिए गए चरणों में, Eclipse को कॉन्फ़िगर करने का तरीका बताया गया है, ताकि jni
फ़ोल्डर में फ़ाइलों में बदलाव करने पर, ndk-build
अपने-आप चल जाए.
- MinimalistActivity प्रोजेक्ट पर राइट क्लिक करें और प्रॉपर्टी पर क्लिक करें. प्रॉपर्टी विंडो में, बिल्डर पैनल चुनें.
- नया बिल्डर जोड़ने के लिए, नया पर क्लिक करें. इसके बाद, प्रोग्राम चुनें और ठीक है पर क्लिक करें.
- नाम फ़ील्ड में, 'NDK बिल्डर' डालें.
- जगह में जाकर, फ़ाइल सिस्टम ब्राउज़ करें पर क्लिक करें. इसके बाद,
NDK_ROOT
डायरेक्ट्री पर जाएं औरndk-build
कमांड चुनें. - वर्किंग डायरेक्ट्री में जाकर, फ़ाइल फ़ोल्डर ब्राउज़ करें पर क्लिक करें. इसके बाद, MinimalistActivity प्रोजेक्ट फ़ोल्डर चुनें.
- रीफ़्रेश करें टैब पर क्लिक करें. पक्का करें कि पूरा होने पर संसाधनों को रीफ़्रेश करें बॉक्स पर सही का निशान लगा हो.
- खास संसाधन रेडियो बटन चुनें. इसके बाद, संसाधन बताएं पर क्लिक करें. इसके बाद दिखने वाले डायलॉग बॉक्स में, MinimalActivity में जाकर
jni
फ़ोल्डर चुनें. - बिल्डर बनाने की प्रोसेस पूरी करने के लिए, लागू करें और फिर ठीक है पर क्लिक करें.
अब जब भी jni
फ़ोल्डर में मौजूद किसी फ़ाइल में बदलाव किया जाएगा, तो Eclipse ndk-build
को चलाएगा और Eclipse Console में आउटपुट को प्रिंट करेगा.