תאימות ואופטימיזציה של Google Play Games במחשב

כדי להשתמש ב-Google Play Games במחשב צריך ליצור מחשב תאימות ושינויים לאופטימיזציה של המשחק. השינויים האלה מבטיחים המשחק יכול לרוץ במחשב וחוויית המשתמש מותאמת לפלטפורמה.

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

כשמבצעים שינויים בתאימות למחשב ובאופטימיזציה (מלבד x86-64) תמיכה), ניתן להגדיר את המשחק זיהוי של Google Play Games במחשב ואז השבתה או הפעלה לתכונות ספציפיות לפלטפורמה. כך אפשר להשתמש באותו APK או באותו App Bundle לגרסאות שלך לנייד ולמחשב עם Android.

לפניכם סיכום של הדרישות וההמלצות בדף הזה:

לכלול ארכיטקטורת ABI מסוג x86-64

נדרש בתהליך השקת הגרסאות

לכל הספריות שכלולות במשחק נדרשות גרסאות תואמות ABI x86-64 כדי להבטיח את הביצועים והיציבות הטובים ביותר בפלטפורמה.

אם מבחינה טכנית לא ניתן לשלוח קובץ הפעלה של x86 64 ביט במשחק שלך, תצטרכו לפנות לצוות הבדיקה במקרה חריג. אין גישה למשחק הסמכה מלאה עם חריג, אבל ניתן להיכלל בקטלוג בתור "הפעלה", משחק.

אוסף ספרייה

כדי להבטיח תאימות למעבדי x86-64 הטובה ביותר, אין להשתמש בעדכון Atom שהגדרת במהלך הידור הספריות. לדוגמה, כשמשתמשים ב-gcc להימנע משימוש ב--march=atom ולהשתמש במקום זאת ב--march=x86-64.

ארכיטקטורת יעד ב-Unity

בחלק מהגרסאות של Unity 2019 ו-2020 אין תמיכה בארכיטקטורה מסוג x86-64 ב- Android. יש להשתמש ב-Unity מגרסה 2019.4.31f1, 2020.3.19f1 ואילך.

אם במשחק שלך פועלת גרסה תואמת של מנוע המשחק של Unity, מבצעים את הפעולות הבאות: הבאים כדי להפעיל יעדי Android x86-64:

  1. עוברים אל הגדרות הנגן > הגדרות אחרות > הגדרה > ביצוע סקריפטים הקצה העורפי ובוחרים ב-IL2CPP מהתפריט הנפתח כדי להפעיל את הקצה העורפי של כתיבת סקריפטים IL2CPP.

  2. מפעילים יעדי Android x86-64 עבור גרסת Unity:

    • Unity 2018 ומטה: עוברים אל הגדרות נגן > הגדרות אחרות > ארכיטקטורת יעד ומסמנים את התיבה x86. מאחר ש-Unity 2018 תומכת רק ביעדים מסוג x86, לא תוכל לבנות x86-64. ה-build הזה מחייב חריגה מצוות הבדיקה. עליך לפנות לאיש הקשר שלך ב-Google כדי לבקש חריגה מגרסת x86.

    • גרסת LTS – תמיכה לטווח ארוך (LTS) של Unity 2019 ואילך: עוברים אל נגן הגדרות > הגדרות אחרות > ארכיטקטורות יעד ולהפעיל את x86-64 (ChromeOS).

זיהוי של Google Play Games במחשב

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

כדאי לבדוק את תכונת המערכת com.google.android.play.feature.HPE_EXPERIENCE כדי כדי לקבוע אם המשחק פועל בפלטפורמת Google Play Games במחשב:

Kotlin

    var isPC = packageManager.hasSystemFeature("com.google.android.play.feature.HPE_EXPERIENCE")
  

Java

    PackageManager pm = getPackageManager();
    boolean isPC = pm.hasSystemFeature("com.google.android.play.feature.HPE_EXPERIENCE")
  

C#‎

var unityPlayerClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
var currentActivity = unityPlayerClass.GetStatic<AndroidJavaObject>("currentActivity");
var packageManager = currentActivity.Call<AndroidJavaObject>("getPackageManager");
var isPC = packageManager.Call<bool>("hasSystemFeature", "com.google.android.play.feature.HPE_EXPERIENCE");
  

טיפול באירועים במחזור החיים של Android

חשוב לטפל onPause (c++) בסביבת Google Play Games במחשב. המשחק שלך גלוי כשנגן מפעיל את שכבת-העל של האמולטור, כך שלא מצליח להאזין אירוע אחד (onPause) יכול לפגוע בחוויית המשתמש.

עדכון ממשק המשתמש

תנועות ורכיבים מסוימים בממשק המשתמש לא מתאימים למחשב וצריך לעדכן אותם.

נדרש:

  • החלפת פעולות בממשק המשתמש שבהן צריך להשתמש בשתי אצבעות או יותר (תנועות עם מספר נקודות מגע). עבור לדוגמה, צריך להחליף את תנועת צביטה לשינוי מרחק התצוגה ותנועות אחרות עם מגע מרובה באמצעות הקלט של העכבר והמקלדת התואמים. פרטים על המכשיר שינויים בקלט, ראו תמיכה בקלט.

המלצה:

  • כל הטקסט הגלוי למשתמש צריך להיות כתוב "click" במקום "tap".
  • רשימות שניתן לגלול צריכות לכלול סרגלי גלילה.
  • אזורים שהמשתמשים יכולים להזיז צריכים לכלול סרגלי גלילה או דרך אחרת לעבור מרחקים גדולים במהירות.
  • אסור להציג במסך מקלדת קליקבילית להזנת טקסט.
  • כל רשומות הטקסט צריכות להיות בתוך הגבולות של שדה הטקסט.
  • קליקים על רכיבים גלויים צריכים:
    • לקבל קליק בכל מקום בתוך הגבולות הגלויים של הרכיב.
    • לא לאשר קליק באזור שמחוץ לרכיב הגלוי.
  • בתיבות דו-שיח צריך להיות לחצן סגירה גלוי. לא לזהות קליק מחוץ ל- גבולות הדו-שיח.

השבתה של רוב תיבות הדו-שיח של ההרשאות

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

תכונות והרשאות שאינן נתמכות ב-Android

נדרש בתהליך השקת הגרסאות

חלק מתכונות החומרה הנפוצות בטלפונים ניידים ובטאבלטים לא זמינות ב- מחשב. האיסור הזה כולל תכונות חומרה כמו המצלמה או מיקום הנגן. לא ניתן להוריד ולהתקין משחק שדורש תכונות חסרות במחשב של הנגן. בקשות של תכונות חסרות במחשב נכשלות באופן אוטומטי.

כדי להציג רשימה מלאה של התכונות הזמינות, אפשר להקליד:

adb shell pm list features

כדי שהמשחק יתאים למחשבים, צריך לבצע את השינויים הבאים:

  • כן לסמן תכונות כאופציונליות בקובץ המניפסט של האפליקציה על ידי הוספה של android:required="false" להצהרה <uses-feature>. רק חלה על התכונות שכבר הוצהרו בקובץ המניפסט של האפליקציה.

  • אין לנסות להשתמש בתכונות חסרות בזמן ריצה. אם משתמשים אותו APK במסלולים של הנייד וגם במחשב, צריך לזהות את סביבת המחשב בכתובת סביבת זמן ריצה ונמנעים .

  • אין לבקש הרשאות לא נתמכות ב-Android בזמן הריצה. אם משתמשים אותו APK במסלולים לנייד ולמחשב, צריך לזהות את סביבת המחשב בכתובת סביבת זמן ריצה ונמנעים . אין צורך לעדכן את המניפסט.

למידע נוסף על תאימות בקובץ המניפסט של האפליקציה, אפשר לעיין מדריך בנושא תאימות לקובץ המניפסט של אפליקציה ל-Chromebook.

דרישות לגבי בדיקות פונקציונליות

יש להסיר את תכונות החומרה האלה לפני שליחת הבקשה הראשונה test build כדי: Google Play Console:

  • android.hardware.wifi
  • android.hardware.bluetooth
  • android.hardware.camera
  • android.hardware.location

יכול להיות שחלק מהתכונות האלה יופיעו כנתמכות בזמן ההפעלה pm list features מסיבות של תאימות, אבל הן לא מוטמעות באופן מלא. עבור מידע נוסף על הסרת התכונה android.hardware.wifi זמין במאמר מעקב אחרי סטטוס הקישוריות ומדידת החיבור. עבור לרשימה המלאה של התכונות שלא נתמכות, ניתן לעיין במדריך התאימות לקובץ המניפסט של האפליקציה למכשירי Chromebook.

דרישות לגבי בדיקת איכות

תכונות החומרה הנפוצות האלה אינן תואמות למחשבים, ולכן להסיר אותם לפני הגשה סופית אל Google Play Console:

  • android.hardware.audio.pro
  • android.hardware.bluetooth
  • android.hardware.camera
  • android.hardware.consumerir
  • android.hardware.location
  • android.hardware.nfc
  • android.hardware.sensor.light
  • android.hardware.sensor.accelerometer
  • android.hardware.sensor.barometer
  • android.hardware.sensor.compass
  • android.hardware.sensor.gyroscope
  • android.hardware.sensor.proximity
  • android.hardware.telephony
  • android.hardware.touchscreen
  • android.hardware.usb.accessory
  • android.hardware.usb.host
  • android.hardware.wifi
  • android.software.midi

הרשאות לא נתמכות

ההרשאות הנפוצות הבאות אינן נתמכות במחשבים, לכן המשחק שלך צריך להשבית אותן ב-Google Play Games במחשב:

  • android.permission.ACCESS_COARSE_LOCATION
  • android.permission.ACCESS_FINE_LOCATION
  • android.permission.ACCESS_WIFI_STATE
  • android.permission.BLUETOOTH
  • android.permission.CAMERA
  • android.permission.FOREGROUND_SERVICE
  • android.permission.GET_ACCOUNTS
  • android.permission.INSTALL_PACKAGES
  • android.permission.READ_CONTACTS
  • android.permission.READ_EXTERNAL_STORAGE
  • android.permission.READ_PHONE_STATE
  • android.permission.RECEIVE_BOOT_COMPLETED
  • android.permission.REQUEST_INSTALL_PACKAGES
  • android.permission.SYSTEM_ALERT_WINDOW
  • android.permission.USE_CREDENTIALS
  • android.permission.WRITE_EXTERNAL_STORAGE
  • android.permission.WRITE_SETTINGS
  • com.google.android.gms.permission.ACTIVITY_RECOGNITION

אתרים חיצוניים ורכיבי WebView

כוונת דפדפן נטען בדפדפן האינטרנט המקורי של המחשב במקום בדפדפן סביבת Google Play Games במחשב. זאת החוויה האידיאלית לשחקנים ב: ברוב המצבים.

כדי להקל על הניוד, אפליקציית Google Play Games במחשב תומכת WebView. מאז ייפתח בסביבה של 'Google Play Games במחשב', והוא לא יכלול בדפדפן מחשב. אם השתמשת בעבר ב-WebView לשיתוף התנאים שלך של שירות, מדיניות פרטיות או תוכן דומה אחר, עליך הפעלה של Intent בדפדפן.

השבתת ממשקי API לא נתמכים של Google Play Service

נדרש בתהליך השקת הגרסאות

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

מודולים נתמכים

המודולים האלה זמינים כרגע ונתמכים על ידי Google Play Games במחשב, עם תוכניות לתמיכה נוספת בתכונות:

תמיכה מוגבלת

המודולים הבאים פועלים באופן חלקי. נעשה כמיטב יכולתנו כדי לתמוך ב-Google Play Games במחשב, אבל אנחנו לא יכולים להבטיח את הפונקציונליות שלהם.

לא נתמך

המודולים האלה לא נתמכים ב-Google Play Games במחשב, אבל הם לא גורמים בעיות ב-Google Play Games במחשב כשהן נכשלות:

קטוע

נדרש בתהליך השקת הגרסאות

אסור להשתמש במודולים האלה במחשבים כי הם עלולים לגרום ההתנהגות של Google Play Games במחשב.

הפעלת נפח אחסון בהיקף

נדרש בתהליך השקת הגרסאות

הקטע הזה רלוונטי אם המשחק קורא או כתוב באחסון חיצוני. ההיקף נדרשת אכיפה של נפח האחסון כדרך חלופית לקרוא ולכתוב אחסון. אם תבצעו את הפעולה הזו, לא תצטרכו לבקש מהנגן להציג מודעות עם תוכן רגיש הרשאות:

  • android.permission.READ_EXTERNAL_STORAGE
  • android.permission.WRITE_EXTERNAL_STORAGE

מידע נוסף על נפח אחסון בהיקף זמין במאמרים הבאים:

ניתוח נתונים

מוצרים מדור קודם של Google Analytics לא פועלים ב-Google Play Games במחשב. אם המיקום ההגדרה הזו רלוונטית למשחקים שלך, צריך להעביר אותה אל Google Analytics 4.

הפעולה הזו תשפיע על המשחק רק אם משתמשים בו כרגע Google Analytics 360. אם המיקום אתם משתמשים ב-Firebase SDK כדי לעקוב אחרי אירועים של ניתוח נתונים במשחק ולראות את המשחק כנכס מסוף Google Analytics, אין לך לבצע פעולות נוספות כלשהן.