הגדרת גרסה 2 של Native C או C++‎

במסמך הזה נסביר איך להגדיר את פרויקט C++‎ ל-v2 Native C או C++‎ ולאמת את שירות האימות.

לפני שמתחילים

צריך להגדיר את Play Games Services ב-Google Play Console.

דרישות מוקדמות לאפליקציה

מוודאים שקובץ ה-build של האפליקציה כולל את הערכים הבאים:

  • minSdkVersion מתוך 19 או יותר
  • compileSdkVersion מתוך 28 או יותר

הגדרת פרויקט המשחק

כדי להגדיר את פרויקט המשחק, צריך לבצע את השלבים הבאים.

עדכון הקובץ build.gradle

בקובץ build.gradle ברמת האפליקציה, מבצעים את הפעולות הבאות:

  • מוודאים שתכונת ה-build של prefab מופעלת.

  • מוסיפים את יחסי התלות של Native SDK בגרסה 2 (בטא):

    • com.google.android.gms:play-services-games-v2-native-c:21.0.0-beta1

הנה דוגמה:

  android {
    ...
    buildFeatures {
      prefab true
    }
    ...
  }
  dependencies {
    ...
    implementation "com.google.android.gms:play-services-games-v2-native-c:21.0.0-beta1"
  }

עדכון הקובץ CMakeLists.txt

מוסיפים את הקוד הבא לקובץ CMakeLists.txt:

  find_package(com.google.android.gms.games.v2.c REQUIRED CONFIG)

  // link games_static for -DANDROID_STL=c++_static or default
  // link games_shared for -DANDROID_STL=c++_shared
  target_link_libraries(
    app PUBLIC com.google.android.gms.games.v2.c::games_static)

עדכון הקובץ AndroidManifest.xml

  1. כדי להגדיר את מזהה הפרויקט של Play Games Services בקובץ AndroidManifest.xml, מוסיפים את השורות הבאות:

    <manifest>
      <application>
        <meta-data android:name="com.google.android.gms.games.APP_ID"
                   android:value="@string/game_services_project_id"/>
      </application>
    </manifest>
    
  2. יוצרים משאב מחרוזת למזהה הפרויקט. כך המשחק יוכל לגשת למזהה בזמן הבנייה. כדי ליצור את המשאב, יוצרים את הקובץ project_root/app/src/main/res/values/games-ids.xml ומוסיפים את הקוד הבא:

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string name="game_services_project_id"
                translatable="false">add your Project ID here</string>
    </resources>
    
  3. מפתחים את המשחק ובודקים אותו. אם הפעולה תצליח, כשמפעילים את המשחק, תוצג בקשה להיכנס לחשבון או באנר שמאשר את הכניסה.

הפעלה מחדש של ההצעה לפעולה לכניסה

אם שחקן דוחה את ההנחיה הראשונית לכניסה ל-Play Games Services שמוצגת אוטומטית כשהמשחק מופעל, הוא יכול לשנות את דעתו במהלך סשן המשחק. אפשר להציג מחדש את בקשת הכניסה על ידי קריאה ל-PgsGamesSignInClient_signIn כל עוד אף שחקן לא מאומת.

הרשאה לשרת גיימינג

אחרי ששחקן עובר בהצלחה את תהליך האימות ב-Play Games Services, לקוח המשחק יכול לבקש קוד הרשאה לשרת ששרת הגיימינג בק-אנד יכול להשתמש בו כדי לתקשר בצורה מאובטחת עם Play Games Services. כך שרת המשחק יכול לאחזר, לעדכן ולאחסן נתונים של השחקן המאומת. אפשר לאחזר את קוד ההרשאה לשרת על ידי קריאה לפונקציה PgsGamesSignInClient_requestServerSideAccess.

מידע נוסף זמין במדריך הגישה לשרת.