כדאי להשתמש ברשימת המשימות הזו כדי לוודא שהמשחק עומד בכל הדרישות ופועל לפי השיטות המומלצות לפני ששולחים אותו לבדיקה ב-Google Play Games במחשב.
הגדרה של הפרויקט
- הורדה וייבוא של ה-SDK: משלבים את הגרסה העדכנית של Play Games PC SDK בסביבה שלכם. מידע נוסף זמין במדריך Unity או במדריך C++.
- יוצרים את מניפסט האפליקציה: יוצרים קובץ
manifest.xmlשבו ממופה<PackageName>לחבילה שרשומה ב-Play Console. מידע נוסף זמין במדריך בנושא מניפסט. - חתימה דיגיטלית על קובץ ההפעלה: חותמים על המשחק באמצעות חתימה דיגיטלית של Authenticode ושומרים על האישור לכל העדכונים העתידיים. אפשר לדלג על השלב הזה במהלך פיתוח מקומי על ידי הפעלת מצב פיתוח, אבל צריך לחתום על הקובץ הבינארי הסופי באמצעות אישור ייצור בפועל מרשות אישורים מוכרת. מידע נוסף זמין במאמר בנושא חתימה דיגיטלית על המשחק.
- עיצוב ושליחה של האישור: שולחים את פרטי האישור לנציג Google. קובץ האישור צריך להכיל רק מידע שקשור לאישור. צריך לוודא שכל הבלוקים שלא קשורים לאישור הוסרו. אפשר להשתמש ב-OpenSSL כדי להמיר קובצי DER/CER לפורמט PEM הנדרש.
שילוב של ממשקי API ותכונות
- מאחלים את ה-SDK: מטמיעים לוגיקה של אתחול ה-SDK, למשל,
InitializeAsync, במהלך ההפעלה לפני שמשתמשים בתכונות אחרות. מידע נוסף זמין במדריך ההפעלה. - הטמעת כניסה חלקה לחשבון: אימות השחקנים באופן אוטומטי באמצעות חשבון הלקוח של Play Games דרך Recall API. מידע נוסף זמין במדריך בנושא כניסה חלקה לחשבון.
- שילוב של Play Integrity: אפשר להשתמש ב-
IntegrityClientכדי לבקש טוקנים ולאמת את הלגיטימיות של סשנים במשחק בשרת העורפי. מידע נוסף זמין במדריך בנושא Play Integrity. - הוספת Play Install Referrer: אם אתם צריכים לעקוב אחרי מקורות של צירוף משתמשים למחשב, אתם יכולים לשלב את Install Referrer API. מידע נוסף זמין במדריך בנושא מקורות תנועה להתקנות.
- טיפול בשגיאות אתחול: כדי להשתמש ב-SDK, צריך לקרוא ל-
GooglePlayInitialize(C++) או ל-GooglePlayInitialization.InitializeAsync(C#) כדי לאתחל את ה-API. כדי להשתמש בממשקי API אחרים, צריך לקרוא לפונקציה הזו ולוודא שהקריאה החוזרת להמשך מסתיימת עםInitializeResult::ok()(C++) או שהפונקציהResult.IsOk(C#) מחזירהtrue. - טיפול בהשבתה חובה: צריך לטפל ב-
kActionRequiredShutdownClientProcessעל ידי השבתת תהליך הלקוח בהקדם האפשרי. - טיפול בדרישות ההתקנה של Google Play Games: צריך לטפל ב
kSdkRuntimeUnavailableעל ידי הודעה למשתמשים שהם צריכים להתקין את Google Play Games ואת זמן הריצה של ה-SDK כדי להמשיך. - טיפול בעדכונים של Google Play Games: טיפול ב-
kSdkRuntimeUpdateRequiredעל ידי הודעה למשתמשים שנדרש עדכון של זמן הריצה של Google Play Games.
הטמעה של חיוב ב-Play
- בדיקת סוגי הרכישות: מוודאים שהמשחק מתבסס רק על רכישות מתוך האפליקציה, כי תשלומים חוזרים ומינויים לא נתמכים. מידע נוסף זמין במאמר בנושא שאלות נפוצות בנוגע לחיוב.
- שליחת שאילתה לגבי פרטי מוצר: אפשר להשתמש ב-
QueryProductDetailsכדי לאחזר נתונים של חנויות מקומיות. אם יש לכם יותר מ-50 מוצרים, צריך לפצל את הבקשה לכמה קריאות. מידע נוסף זמין במדריך לשליחת שאילתות לגבי מוצרים. - הפעלת תהליך הרכישה: אפשר להשתמש ב-
LaunchPurchaseFlowכדי לעבד עסקאות באופן מקורי. אם סוגרים את הדפדפן של התשלום בלי לשלם, מתרחשת שגיאת זמן קצוב לתפוגה של חמש דקות. מידע נוסף זמין במדריך תהליך הרכישה. - שחזור רכישות קיימות: קוראים ל-
QueryPurchasesבהפעלה ובהעברה לחזית כדי לזהות רכישות שלא אושרו במכשירים שונים. מידע נוסף זמין במדריך לשחזור רכישות. - עיבוד מאובטח של הנתונים: מאמתים את
purchaseTokenבשרת העורפי לפני שמעניקים הרשאות ומסיימים את התהליך באמצעותAcknowledgePurchaseאוConsumePurchase. מידע נוסף זמין במדריך לעיבוד מאובטח.
בדיקה במצב פיתוח וביצוע בקרת איכות לפני ההשקה
- בדיקה במצב פיתוח: מוסיפים
<IsDeveloperMode>true</IsDeveloperMode>למניפסט ומגדירים את ה-GUID של שותף הגישה המוקדמת לבדיקה מקומית של סביבת פיתוח משולבת (IDE). אם אין לכם GUID של שותף גישה מוקדמת, עליכם למלא את טופס ההתעניינות. - ניהול רכישות במצב פיתוח: כשבודקים רכישות במצב פיתוח, צריך להשתמש ברכישה תוך שלוש דקות כדי למנוע החזרים כספיים אוטומטיים. מידע נוסף זמין בשאלות הנפוצות בנושא בדיקות.
- הסרת מצב פיתוח: צריך להסיר את התג
<IsDeveloperMode>לפני אריזת גרסת build להפצה, בהקדם האפשרי. מידע נוסף זמין במדריך למצב פיתוח. - העברת ארגומנטים באמצעות מפעילים של צד שלישי: העברת כל הארגומנטים הלא מוכרים של שורת הפקודה שהתקבלו מהמפעיל מלקוח Google Play Games ישירות לתהליך המשחק שנוצר. מידע נוסף זמין במדריך בנושא ריבוי תהליכים.
- בדיקה באמצעות VPN: אם אתם מבצעים בדיקה מאזור שלא נתמך, אתם צריכים להשתמש ב-VPN עם מצב TUN מופעל כדי לקבל כתובת IP נתמכת. מידע נוסף זמין במאמר בנושא שאלות נפוצות על בדיקות VPN.
- תמיכה בקיצורי דרך בשולחן העבודה: כדי לקבל תמיכה חלקה בקיצורי דרך, אפשר לעיין בשאלות הנפוצות בנושא קיצורי דרך. הפעלת המשחק או משגר של צד שלישי ישירות באמצעות קיצור דרך עלולה להוביל לשגיאות אתחול.
אריזה, בדיקה ופרסום של המשחק
- אריזת קובץ ה-WAB: משתמשים בכלי הפרסום של Play כדי לארוז את המשחק בפורמט Windows App Bundle (WAB). גודל קובץ ה-WAB צריך להיות קטן מ-10GB. מידע נוסף זמין במדריך האריזה.
- מוודאים אם נדרשת הרשאה: אם צריך להפעיל את קובץ ההתקנה, את קובץ ההפעלה או את קובץ ההסרה כאדמין בכל פעם שמפעילים אותם, חשוב לבדוק אם הגדרתם את
INSTALLER_REQUIRES_ELEVATION,LAUNCHER_REQUIRES_ELEVATIONאוUNINSTALLER_REQUIRES_ELEVATIONל-true. אחרת, הם לא יפעלו עם הרשאות אדמין, מה שיוביל לכשל בהפעלה. פרטים נוספים זמינים במאמר בנושא פורמט קובץ ההגדרות של WAB. - שליחת קובצי התקנה של מרכז אפליקציות של צד שלישי: אם אתם משתמשים במרכז אפליקציות של צד שלישי, אתם צריכים לשלוח את קובץ ההתקנה שלו בתוך ה-WAB. מידע נוסף זמין במדריך לפרסום כלי התקנה.
- טיפול בטוקן לסשן הפעלה אוטומטית: אם מפעילים הפעלה אוטומטית על ידי הגדרת
acceptsCommandLineArguments="true"ב-play_publishing_config.xml, צריך לוודא שהתוכנה להתקנת המשחק מחלצת את ארגומנט שורת הפקודה--g_session_token=<token>ומשתמשת בו כדי להפעיל את המשחק. חשוב לוודא שהמתקין מטפל במקרה של חזרה למצב הקודם, שבו האסימון לא קיים. מידע נוסף זמין בשאלות הנפוצות בנושא מרכז האפליקציות. - עדכון המשחק, מרכז ההפעלה או קובץ ההתקנה: התוכן של החבילה, כולל קובצי ההתקנה של מרכז ההפעלה, חייב להיות ניתן לעדכון עצמי. צריך לנהל את כל המשאבים שהמשחק צריך, כולל עדכון מרכז ההפעלה עצמו.
- שיתוף פרטי ההשקה עם Google: צריך לפנות לשותף שלכם ב-Play ולשתף את שם החבילה, את המדינות שבהן האפליקציה תושק (באמצעות קודי ISO בני 2 תווים, לדוגמה US, CA, MX) ואת תאריך ושעת ההשקה לפי זמן אוניברסלי מתואם (UTC).
- הגדרת גישה לבדיקות: צריך לספק קבוצת Google חיצונית כדי להוסיף אותה לרשימת ההיתרים לצורך בדיקות, תיעוד וגישה ל-Google Drive. צריך לשתף עם השותף ב-Play רשימת כתובות אימייל של חשבונות בדיקה, כי מסלולי בדיקה ב-Play Console לא נתמכים במחשב.
- מוסיפים את גורם הצורה של המחשב: מוסיפים באופן מפורש את גורם הצורה 'Google Play Games במחשב' לאפליקציה ב-Google Play Console. אם אין לכם גישה לכרטיסייה הזו, אתם יכולים לפנות לשותף Play כדי להוסיף את החשבון שלכם לרשימת ההיתרים.
- הגדרת הדרישות למחשבים: מזינים את דרישות החומרה (זיכרון RAM, כרטיס מסך, נפח אחסון) למחשבים עם Windows. מידע נוסף מופיע במדריך לדרישות המחשב.
- העלאת נכסים של החנות: מעלים את קובץ ה-WAB הארוז אל מסלול הייצור ומגדירים נכסים חזותיים. מידע נוסף זמין במדריך להעלאת נכסים.
- פרסום לבדיקה בסביבת משתמש: בוחרים באפשרות פרסום ב-Google Play Console. בניגוד לגרסת Android, בחירה באפשרות פרסום ב-WAB לא מפעילה הפצה לציבור. במקום זאת, היא מאפשרת לחפש את האפליקציה בחשבונות הבדיקה המשותפים שלכם כדי לבצע בדיקות בסביבת משתמש אחרי תהליך הבדיקה של Google.
- השקה רשמית: Google שולטת בהשקה על סמך תאריך ההשקה הרשמי ששיתפתם עם השותף שלכם ב-Play.
- בדיקה במהלך הרישום מראש: במהלך שלב הרישום מראש, אתם חייבים לבצע בדיקה פנימית במדינה שלא נכללת באזורים שבחרתם לרישום מראש.
- אימות סיום תהליך ההתקנה: מוודאים שתהליך ההתקנה הראשי נשאר פעיל עד שכל מפתחות הרישום הנדרשים נוצרים ונרשמים. אם התהליך יוצא לפני הזמן, אימות ההתקנה נכשל. מידע נוסף זמין במאמר בנושא פרסום קובץ התקנה.
מעבר מ-API ל-SDK
המעבר מ-API ל-SDK הוא שלב אופציונלי. אם בוחרים לבצע מיגרציה, כדאי לפעול לפי ההמלצות הבאות:
- הסרת ממשקי API מדור קודם של REST: מיפוי קריאות ל-Play Developer API מדור קודם (לדוגמה,
purchases.products.get) לפונקציות של Native SDK בצד הלקוח. מידע נוסף זמין במדריך להעברת נתונים. - מאמתים את הארגומנטים בשורת הפקודה: הארגומנטים בשורת הפקודה בסביבת ה-SDK עשויים להיות שונים מאלה שבסביבת ה-API. מוודאים שהחבילה מטפלת בכל הארגומנטים ומעבירה אותם בצורה נכונה. מידע נוסף זמין במאמר בנושא אימות.
- מאמתים את נתיב הרישום: כדי שההעברה ל-Native SDK תתבצע בצורה חלקה, הגדרת הרישום צריכה להיות זהה לגרסאות הקודמות. מידע נוסף זמין במדריך לקובץ WAB.