הפצת אפליקציות

ממשק ה-API של Google Play ל-EMM תומך בשיטות ההפצה הבאות עבור אפליקציות ציבוריות ופרטיות לנייד:

התקנה ידנית של אפליקציות מחנות Google Play לארגונים

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

ההתנהגות של חנות Play לארגונים מוגדרת לפי הערך של policy.productAvailabilityPolicy:

  • all: כל האפליקציות הציבוריות מחנות Play זמינות.
  • whitelist: רק האפליקציות שמופיעות בpolicy.productPolicy זמינות.

בשני המקרים, כל האפליקציות ב-policy.productPolicy מתווספות כברירת מחדל ל- פריסת החנות של הארגון. פריסת החנות של הארגון היא דף הבית של חנות Play לארגונים כשבוחרים באפשרות whitelist, ואפשר לגשת אליה ב'אפליקציות לעבודה' כאשר all נבחר. תוכל לאפשר ללקוח שלך להתאים אישית את פריסת החנות של הארגון על ידי הטמעת Google Play לארגונים iframe (מידע נוסף זמין במאמר בנושא ארגון אפליקציות באמצעות ה-iframe של Google Play לארגונים).

התקנה מרחוק של אפליקציות במכשירים של המשתמש

כדי להתקין מרחוק (נקראת גם התקנה בדחיפה) אפליקציה במכשיר של משתמש, צריך להגדיר policy.productPolicy.autoInstallPolicy ב-policy של Device. מתי עם הקצאה של מכשיר חדש, צריך להגדיר את המדיניות לפני שמוסיפים את המכשיר המנוהל חשבון Google Play במכשיר, אחרת המדיניות לא תחול על פרק זמן קצר לאחר הוספת החשבון למכשיר.

אפשר להגדיר את autoInstallMode לאפשרויות הבאות:

  • doNotAutoInstall: האפליקציה לא מותקנת באופן אוטומטי.
  • autoInstallOnce: האפליקציה מותקנת באופן אוטומטי פעם אחת, אם המשתמש מסיר את האפליקציה שהיא לא תותקן שוב.
  • forceAutoInstall: האפליקציה מותקנת באופן אוטומטי, אם המשתמש מסיר את האפליקציה שהיא תותקן שוב. בקר DPC במכשירים מנוהלים צריך לחסום את ההסרה באמצעות DevicePolicyManager.setUninstallBlocked

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

עדיפות התקנה

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

מגבלות על התקנות

אפשר להגדיר מגבלות התקנה לכל אפליקציה על ידי הגדרת autoInstallConstraint, וכך לשלוט במצב הנדרש של במהלך ההתקנה:

  • האם המכשיר צריך להיות מחובר לרשת Wi-Fi,
  • האם המכשיר צריך להיטען,
  • ואם המכשיר צריך להיות לא פעיל (לא בשימוש פעיל של המשתמש).

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

ב-autoInstallConstraint, הכלל AND מוחל על השדות. עבור לדוגמה, עם autoInstallConstraint הבא, המכשיר חייב להיות גם בטעינה ומחוברים לרשת לא נמדדת (למשל, Wi-Fi) כדי שהאפליקציה מותקן:

"autoInstallConstraint": [
  "chargingStateConstraint" : "chargingRequired",
  "networkTypeConstraint" : "unmeteredNetwork"
]

התקנה אוטומטית של אפליקציות במכשירים שהוקצו חדשים

מ-Google Play EMM API שולחת התראה של NewDeviceEvent כאשר מכשיר שהוקצה לראשונה. כדי להתקין אפליקציות בדחיפה אוטומטית להקצאת הרשאות ידנית חדשה מכשירים, האזנה להתראות NewDeviceEvent. בכל NewDeviceEvent, מאחזרים את userId ואת deviceId, ואז קוראים Devices.update כדי להגדיר המדיניות הרלוונטית למכשיר הזה.

למידע נוסף על הרשמה לקבלת התראות EMM: להגדרת התראות EMM

הפצת אפליקציות לבדיקה בקבוצה מוגדרת

בדיקה בקבוצה מוגדרת מאפשרת למפתחי אפליקציות לקבל משוב על גרסאות מוקדמות של ממשתמשים מהימנים. מפתחים יכולים להגדיר בדיקות בקבוצה מוגדרת ב-Google Play מסוף. נעשה שימוש ב-Play EMM API כדי לאפשר למנהלי IT להפיץ קבצים סגורים גרסאות (שנקראות גם מסלולים) של אפליקציות למשתמשים ספציפיים. הארגון שלך הלקוחות יכולים להשתמש בתכונה הזו לא רק כדי לבדוק אפליקציות של צד שלישי, אלא גם כדי לבדוק פרטיות שפותחו באופן פנימי.

אפליקציות שעומדות בדרישות

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

  • גרסת ייצור של האפליקציה פורסמה ב-Google Play.
  • ב-Google Play Console, Google Play לארגונים מופעל הדף הגדרות מתקדמות.
  • כל גרסה סגורה של האפליקציה Meet דרישות לקוד גרסה.

הוספת ארגון לבדיקות סגורות

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

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

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

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

חלוקת מסלולים סגורים למשתמשים

כדי לאחזר רשימה של טראקים שזמינים לארגון עבור אפליקציה ספציפית: קוראים לפונקציה Products.get. הרשימה appTracks[] שכלולה בתשובה כוללת את המסלולים הזמינים לכל אפליקציה. appTracks[].trackAlias הוא משתמש שם קריא לטראק שמוצג במסוף ה-EMM appTracks[].trackId הוא המזהה הקריא למחשב של הטראק.

כדי להעניק למשתמש הרשאות גישה למסלול סגור של אפליקציה, צריך להגדיר את policy.productPolicy[].trackIds[] ב- policy של Device. אם למכשיר מסוים יש כמה מסלולים, תותקן הגרסה הזמינה עם קוד הגרסה הגבוה ביותר.

מזהי TrackId יוסרו באופן אוטומטי מהקריאה Products.get בחלק מהמקרים תרחישים כמו:

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

מעקב אחר רישיונות לאפליקציות בתשלום

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

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

האובייקטים Grouplicenses ו-Entitlements לא נמצאים בשימוש באפליקציות שהן שמופצת ללא תשלום.