כדאי להשתמש ברשימת המשימות הזו כדי לוודא שהמשחק עומד בכל הדרישות ופועל בהתאם לשיטות המומלצות לפני ששולחים אותו לבדיקה ב-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>לפני אריזת גרסת ההפצה, בהקדם האפשרי. מידע נוסף זמין במדריך למצב פיתוח. - העברת ארגומנטים באמצעות מפעילים של צד שלישי: העברת כל הארגומנטים הלא מוכרים של שורת הפקודה שהתקבלו מהמפעיל מלקוח 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.