תחילת השימוש ב-Play Games Services בשביל C++ ב-Android

בעקבות ההוצאה משימוש של ה-API של התחברות באמצעות חשבון Google, בשנת 2026 אנחנו מסירים את גרסה 1 של ה-SDK שהייתה זמינה למשחקים. החל מפברואר 2025, לא תהיה לך אפשרות לפרסם ב-Google Play משחקים שה-SDK בגרסה הזו שולב בהם לאחרונה. מומלץ להשתמש בגרסה 2 של ה-SDK למשחקים.
פריטים קיימים עם גרסה 1 ימשיכו לפעול בשנים הקרובות, אבל מומלץ לעבור לגרסה 2 החל מיוני 2025.
המדריך הזה מיועד לגרסה 1 של ה-SDK של Play Games Services. גרסה 2 של ה-SDK ל-C++‎ של Play Games Services עדיין לא זמינה.

במדריך הזה למפתחים נסביר איך לקמפל ולהריץ משחק C++‎ ב-Android שמשתמש בממשק Google Play Game 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++‎ של Play Games Services. מחולצים את ה-SDK למחשב הפיתוח. בסביבה שלכם, מגדירים את המשתנה NDK_MODULE_PATH כך שיצביע על התיקייה מעל התיקייה gpg-cpp-sdk. המבנה של ספריית המקור צריך להיות כזה:
    NDK_MODULE_PATH/
    gpg-cpp-sdk/
  4. פותחים את Eclipse. אם עדיין לא עשיתם זאת, צריך להגדיר ב-Eclipse את המיקום שבו התקנתם את NDK. לשם כך, לוחצים על Preferences > Android > NDK.
  5. מייבאים את פרויקט הספרייה של Google Play Services לסביבת העבודה של Eclipse.

    1. ב-Eclipse, לוחצים על File > Import > Android > Existing Android Code into Workspace (קובץ > ייבוא > Android > קוד Android קיים לסביבת העבודה).
    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 (קובץ > ייבוא > Android > קוד Android קיים לסביבת העבודה).
    2. בוחרים באפשרות SAMPLES_DIR/samples-android/minimalist.
    3. לוחצים על סיום.
  7. לוחצים לחיצה ימנית על הפרויקט MinimalistActivity ולוחצים על Properties (מאפיינים). בקטע Android, גוללים למטה אל הקטע Library ומוודאים שהפרויקט 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 Games Services.
  2. ב-AndroidManifest.xml, משנים את מאפיין package של התג <manifest> לשם החבילה שבחרתם כשביצעתם את ההגדרה של Google Play Console. יכול להיות שתצטרכו לתקן כמה הפניות בפרויקט אחרי שתבצעו את השינוי הזה (במיוחד להגדרות של המחלקה R שנוצרה).
  3. פותחים את res/values/ids.xml ומזינים בו את מזהה האפליקציה. שימו לב: מזהה האפליקציה לא זהה למזהה הלקוח. זהו המספר שליד שם המשחק בדף פרטי המשחק ב-Google Play Console.

שלב 3: מריצים את הדוגמה

כדי להריץ את הדוגמה, צריך מכשיר Android פיזי או אמולטור עם Google Play Services מותקן:

  1. מריצים את הפקודה ndk-build כדי לקמפל את הקוד Native.
  2. ב-Eclipse, לוחצים על Run > Run As > Android Application ומריצים את הדוגמה במכשיר.
  3. כשדוגמה נפתחת, מקישים במקום כלשהו במסך. אמור להופיע הלוגו של Google Play Games. אם הגדרתם את האפליקציה בצורה נכונה, תתבקשו להיכנס לחשבון.

אופציונלי: יצירת גרסת build באופן אוטומטי באמצעות Eclipse

בשלבים הבאים מוסבר איך להגדיר את Eclipse כך שיפעיל אוטומטית את ndk-build כשמבצעים שינויים בקבצים בתיקייה jni.

  1. לוחצים לחיצה ימנית על הפרויקט MinimalistActivity ולוחצים על Properties (מאפיינים). בחלון Properties, בוחרים בחלונית Builders.
  2. לוחצים על New (חדש) כדי להוסיף כלי חדש ליצירת תוכניות, בוחרים באפשרות Program (תוכנית) ואז לוחצים על OK (אישור).
  3. בשדה Name (שם), מזינים 'NDK Builder'.
  4. בקטע מיקום, לוחצים על עיון במערכת הקבצים, עוברים לספרייה NDK_ROOT ובוחרים את הפקודה ndk-build.
  5. בקטע Working Directory לוחצים על Browse Workspace ובוחרים את תיקיית הפרויקט MinimalistActivity.
  6. לוחצים על הכרטיסייה רענון. מוודאים שהתיבה Refresh resources upon completion (רענון המשאבים לאחר השלמת הפעולה) מסומנת.
  7. בוחרים בלחצן האפשרויות משאבים ספציפיים ואז לוחצים על ציון משאבים. בתיבת הדו-שיח שמופיעה, בוחרים בתיקייה jni בקטע MinimalActivity.
  8. לוחצים על אישור ואז על אישור כדי לסיים ליצור את הכלי.

מעכשיו, בכל פעם שתערכו קובץ בתיקייה jni,‏ Eclipse יפעיל את ndk-build וידפיס את הפלט במסוף של Eclipse.