כדי להשתמש ב-Google Play Games במחשב, עליכם לבצע שינויים במשחק כדי להתאים אותו למחשב ולבצע אופטימיזציה. השינויים האלה מבטיחים המשחק יכול לרוץ במחשב וחוויית המשתמש מותאמת לפלטפורמה.
בנוסף, Google Play Games במחשב כולל גרפיקה, קלט למכשירים דרישות להפעלה במכשירים שונים. מידע נוסף זמין במדריך למתחילים.
כשמבצעים שינויים בתאימות למחשב ובאופטימיזציה (מלבד x86-64) תמיכה), ניתן להגדיר את המשחק זיהוי של Google Play Games במחשב ואז השבתה או הפעלה לתכונות ספציפיות לפלטפורמה. כך תוכלו להשתמש באותו קובץ APK או באותה חבילת אפליקציות לגרסאות לנייד ולמחשב של Android.
לפניכם סיכום של הדרישות וההמלצות שבדף הזה:
- הכללת ABI של x86-64 (חובה)
- זיהוי Google Play Games בזמן הריצה (מומלץ)
- טיפול באירוע onPause (מומלץ)
- עדכון רכיבי ממשק המשתמש (חובה)
- השבתת תיבת הדו-שיח של הרשאות האפליקציה ב-Android (חובה)
- השבתת הרשאות ותכונות של Android שלא נתמכות (חובה)
- החלפה של WebView באובייקטים של Intent בדפדפן (מומלץ)
- השבתת ממשקי API לא נתמכים של Google Play Service (חובה)
- הפעלת האחסון בהיקף (חובה)
- העברה אל Google Analytics 4 (מומלץ)
הוספת ארכיטקטורת ABI מסוג x86-64
נדרש בתהליך השקת הגרסאות
כדי להבטיח את הביצועים והיציבות הטובים ביותר בפלטפורמה, כל הספריות שכלולות במשחק צריכות להיות בגרסאות תואמות ל-x86-64 ABI.
אם מבחינה טכנית לא ניתן לשלוח את המשחק כקובץ הפעלה של 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:
עוברים אל Player Settings (הגדרות Player) > Other Settings (הגדרות אחרות) > Configuration (הגדרה) > Scripting Backend (קצה עורפי ל-Scripting) ובוחרים באפשרות IL2CPP בתפריט הנפתח כדי להפעיל את הקצה העורפי ל-Scripting של IL2CPP.
מפעילים יעדים של Android מסוג x86-64 בגרסה של Unity:
Unity 2018 וגרסאות קודמות: עוברים אל הגדרות Player > הגדרות אחרות > ארכיטקטורת יעד ובוחרים את התיבה x86. מכיוון ש-Unity 2018 תומכת רק ביעדים מסוג x86, לא תוכלו ליצור build ל-x86-64. ה-build הזה מחייב חריגה מצוות הבדיקה. עליך לפנות לאיש הקשר שלך ב-Google כדי לבקש חריגה מגרסת x86.
מהגרסה Long Term Support (LTS) של Unity 2019 ואילך: עוברים אל הגדרות Player > הגדרות אחרות > ארכיטקטורות יעד ומפעילים את x86-64 (ChromeOS).
זיהוי של Google Play Games במחשב
אפשר לזהות את פלטפורמת Google Play Games במחשב בזמן הריצה, וכך כדי להפעיל או להשבית תכונות ספציפיות לפלטפורמה במשחק שלך.
כדי לבדוק אם המשחק פועל בפלטפורמה של Google Play Games במחשב, מחפשים את תכונת המערכת com.google.android.play.feature.HPE_EXPERIENCE
:
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
) יכול לפגוע בחוויית המשתמש.
עדכון ממשק המשתמש
יש רכיבים מסוימים בממשק המשתמש תנועות מסוימות שלא מתאימים למחשב PC, וצריכים לעדכן אותם.
נדרש:
- החלפת פעולות בממשק המשתמש שבהן צריך להשתמש בשתי אצבעות או יותר (תנועות עם מספר נקודות מגע). לדוגמה, צריך להחליף את הצמדת האצבעות כדי להתקרב או להתרחק ואת תנועות מגע אחרות בקלט המתאים של העכבר והמקלדת. פרטים על השינויים בקלט המכשיר זמינים במאמר תמיכה בקלט.
המלצה:
- בכל הטקסט שגלוי למשתמשים צריך להופיע 'לחיצה' במקום 'הקשה'.
- לרשימות שניתן לגלול בהן צריכות להיות סרגליות גלילה.
- אזורים שהמשתמשים יכולים להזיז צריכים לכלול סרגלי גלילה או דרך אחרת לעבור מרחקים גדולים במהירות.
- אסור להציג במסך מקלדת קליקבילית להזנת טקסט.
- כל הטקסט צריך להיכנס למסגרת של שדה הטקסט.
- קליקים על רכיבים גלויים צריכים:
- לקבל קליק בכל מקום בתוך הגבולות הגלויים של הרכיב.
- לא לאשר קליק באזור שמחוץ לרכיב הגלוי.
- בתיבות דו-שיח צריך להופיע לחצן סגירה גלוי. לא לזהות לחיצה מחוץ למסגרת של תיבת הדו-שיח.
השבתה של רוב תיבות הדו-שיח של ההרשאות
מלבד הרשאת הגישה למיקרופון, אפליקציית 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
, ראו מעקב אחרי סטטוס הקישוריות ומדידה של חיבורים. במדריך התאימות של מניפסט האפליקציה ל-Chromebooks מפורטת רשימה מלאה של התכונות שלא נתמכות.
דרישות לגבי בדיקת איכות
תכונות החומרה הנפוצות האלה אינן תואמות למחשבים, ולכן להסיר אותם לפני הגשה סופית אל 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 Services שלא נתמכים
נדרש בתהליך השקת הגרסאות
Google Play Games on PC כולל גרסה משלו של Google Play Services שמכילה רק קבוצת משנה של ממשקי ה-API של Google Play Services. עליך לאשר שהאפליקציה לא תלויה מאוד במודולים שהושמטו או אין תמיכה במחשב PC. חשוב לזכור שיכול להיות שחלק מהמודולים יהיו זמינים, אבל הפונקציות שלהם לא תמיד נתמכות. לדוגמה, Firebase Cloud Messaging לא יפעל כש-Google Play Games במחשב סגור.
מודולים נתמכים
המודולים האלה זמינים כרגע ב-Google Play Games במחשב, ואנחנו מתכננים להוסיף תמיכה בתכונות נוספות:
- כניסה באמצעות חשבון Google (לא כולל העברת חשבון, SmartLock, אימות SMS, חישוב מורכבות הסיסמה)
- Cronet
- Google Play Games Services
- משימות
- חזון
- Google Pay
תמיכה מוגבלת
המודולים הבאים פועלים באופן חלקי. נעשה כמיטב יכולתנו כדי לתמוך ב-Google Play Games במחשב, אבל אנחנו לא יכולים להבטיח את הפונקציונליות שלהם.
- העברת הודעות בענן ב-Google (הוצא משימוש, יש להשתמש בהעברת הודעות בענן ב-Firebase)
- אימות ב-Firebase (אימות באמצעות מספר טלפון לא עובד)
- Firebase Cloud Messaging
- הספריות הנפוצות של Firebase
- Firebase ML
- הגדרת תצורה מרחוק ב-Firebase
- Firebase Analytics
לא נתמך
המודולים האלה לא נתמכים ב-Google Play Games במחשב, אבל הם לא גורמים בעיות ב-Google Play Games במחשב כשהן נכשלות:
- Google Analytics (הוצא משימוש, צריך להשתמש ב-Firebase Analytics)
- Google Cast
- Awareness API
- Drive (האפשרות הוצאה משימוש ותוסרה בקרוב)
- FIDO
- מסד נתונים בזמן אמת ב-Firebase
- Firestore
- בדיקת A/B ב-Firebase
- Google Fit
- Address API
- API של אפליקציות ללא התקנה
- Location API
- Google Maps SDK
- בקרבת מקום
- פנורמה
- מקומות
- Google+
- SafetyNet (הוצא משימוש. כדי להביע הסכמה לשימוש ב-Play Integrity API שיושקו בקרוב, יש למלא את טופס העניין)
- Google Tag Manager
- Wear OS
קטוע
נדרש על ידי תהליך הפרסום
אסור להשתמש במודולים האלה במחשבים, כי הם עלולים לגרום להתנהגות לא צפויה ב-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, אין לך לבצע פעולות נוספות כלשהן.