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

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

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