הטמעת נכסים להעברה בענן

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

אנחנו מבצעים את השינוי הזה על סמך משוב שקיבלנו ממפתחים וההשקעות המתמשכות שלנו בשיפור הסביבה העסקית מאז השקת Google Play ללא התקנה.

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

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

הכנה

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

נדרש תמיד

חלק מהנכסים קשה לחלק לבלוקים קטנים יותר או שנדרש לאגד אותם בקובץ ה-APK הבסיסי. דוגמאות: קוד המשחק ויחסי התלות שלו בספריות או במנוע. ‫Google Play Core תומך בחבילות אפליקציות לקוד, אבל מנועים רבים לא תומכים בקוד שהורד מאוחר יותר.

נדרש בהשקה

אחרי שהמשחק מתחיל, המשתמש יכול להתחיל לשחק באופן מיידי. כדי להשתמש ב-Google Play ללא התקנה, המשתמשים צריכים להיות מסוגלים להתחיל לשחק במשחק תוך פחות מ-15 שניות דרך חיבור LTE או 4G (ראו את רשימת המשימות ל-Google Play ללא התקנה). לכן, צריך להגביל את גודל ההורדה המשנית אחרי ההפעלה רק למה שדרוש כדי לתמוך בחוויה הראשונית. לדוגמה, הורדה מהירה מיד אחרי ההפעלה עשויה לכלול את השלב הראשון במשחק ואת נכסי המיקום, או כל קוד שנדרש להרצת הדקות הראשונות של המשחק.

Needed later

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

תמיכה במנוע

התכונה Cloud Asset Delivery היא הדרך העיקרית שמאפשרת למשחק שלכם לחרוג מהמגבלה של 15MB למשחקים ללא התקנה. התמיכה בהורדת נכסים תשתנה בהתאם למנוע המשחק. בהמשך מפורטים המקרים הנפוצים ביותר, וגם אפשרויות לאירוח נכסים.

חשוב לזכור שככל שיש פחות נכסים שנדרשים להפעלה, המשתמש יכול להיכנס למשחק מהר יותר, מה שמוביל לירידה קטנה יותר בשיעור הנטישה ולשימור טוב יותר של השחקנים בהפעלה הראשונה.

הפצת פיצ'רים ב-Play (באמצעות קובצי App Bundle)

אם אתם מפרסמים את האפליקציה כקובץ Android App Bundle (שהיא השיטה המועדפת), אתם יכולים להשתמש במודולים של תכונות כדי לאחזר משאבים נוספים מעבר לחבילת ה-APK הבסיסית. בכל מודול תכונות של האפליקציה ללא התקנה צריך להגדיר את dist:instant="true" במניפסט. אין להשתמש במאפיין dist:on-demand. הוא משמש בעיקר למודולים לפי דרישה בחבילות APK מותקנות. בנוסף, כל מודול תכונות צריך להיות קטן ממגבלת הגודל של חבילת ה-APK של האפליקציה ללא התקנה, שהיא 15 MB, בין אם המודול מכיל קוד ובין אם לא. אם לא תצליחו לשמור על גודל של כל מודול מתחת למגבלה הזו, לא תוכלו לפרסם את האפליקציה בערוצי אלפא או בערוצי הפצה. אחרי שמגדירים את המודולים בצורה נכונה, אפשר לאחזר מודולים של תכונות בזמן הריצה באמצעות ספריית PlayCore.

Cocos Creator

‫Cocos תומכת בהעברת נכסים בענן מאז גרסה v2.0.4. ‫Cocos מוריד נכסים לפי דרישה, ומציג placeholders אם הנכסים לא הורדו בזמן. ‫Cocos יוצרת קובצי נכסים שצריך לארח בשירות אונליין כלשהו, כי Cocos לא מספקת שירות כזה משלה.

Unity

יש תמיכה בהפצה בענן בתוסף Unity Google Play Instant בגרסאות Unity‏ 5.6,‏ 2017.4 או 2018.2. גרסאות מאוחרות יותר של Unity מציעות יתרונות נוספים להסרת רכיבים מהמנוע, ולכן כדאי לעבור אליהן כדי לפנות יותר מקום. נכסי הענן של Unity מתארחים בקובצי AssetBundle ש-Unity יוצרת בשבילכם. העלאה של הנכסים האלה לשרת בענן מאפשרת להעביר אותם בענן, כי ל-Unity יש תמיכה מובנית בהורדה של חבילות נכסים.

מנועים אחרים

בין אם אתם משתמשים במנוע מותאם אישית או באוסף של ספריות מקוריות, יכול להיות שהבחירה שלכם תתמוך בהורדה של נכסים מהענן ללא צורך בהגדרות נוספות. אם יש לכם מספיק נכסים שאתם צריכים להוריד מהענן, תצטרכו לכתוב קוד או לשלב דרך להורדת נכסים לפי דרישה למשחק שלכם. כדאי להתחיל עם ממשקי ה-API של Firebase Hosting או Firebase Cloud Storage. חלק מהמנועים מציעים אחזור פשוט של קובצי HTTPS, שיכול להיות שמספיק לצרכים שלכם.

אירוח נכסים

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