מצב הדגמה לקמעונאים

ב-Android 7.1.1 נוספה תמיכה ברמת המערכת למצב ההדגמה לקמעונאים, הלקוחות יכולים לבחון את המכשירים בפעולה בחנויות קמעונאיות. המכשירים הוגדרו להדגמה לקמעונאים באמצעות אפליקציה של בעל המכשיר, כדי לוודא שהשימוש במכשיר מוגבל לאפליקציות מסוימות של מצב הדגמה בלבד. אסור שמשתמשי קצה יוכלו להוסיף לשימוש אישי במכשיר הדגמה לקמעונאים. מערכת Android 8.1 תשנה את התמיכה הזו ל יוצרים משתמשי הדגמה דרך DevicePolicyManager createAndManageUser API. כך מתאפשרת התאמה אישית רחבה יותר של ה-OEM (יצרן הציוד המקורי) למצב הקמעונאי הרגיל ניהול משתמשים וניהול מדיניות מכשירים במכשיר ההדגמה.

אומנם DevicePolicyManager אפשר להשתמש בממשקי API בגרסאות שקודמות ל-Android 8.1, לא ניתן ליצור משתמשים בסוג הדמוגרפיה (DevicePolicyManager.MAKE_USER_DEMO) באמצעות createAndManageUser API בגרסה 8.0 ובגרסאות קודמות.

הטמעה ב-Android 8.1 ואילך

בקטע הזה נדגיש את השיפורים בפלטפורמה ומתאר את ההדגמה לקמעונאים באפליקציה ב-Android מגרסה 8.1 ואילך.

שינויים בפלטפורמות

הגדרה של DEVICE_DEMO_mode

במכשירים שבהם מוטמע מצב הדגמה קמעונאית שמבוסס על בעלי המכשיר צריך להגדיר Settings.Global.DEVICE_DEMO_MODE ל-1 לפני הקצאת הרשאות ידנית כדי לציין שהמכשיר נמצא בתהליך הקצאה להדגמה קמעונאית במצב תצוגה. SystemServer משתמשת בדגל הזה כדי לנהל היבטים של המצב הקמעונאי, כמו פרופיל כוח SystemUI.

הפעלת RetailDemoModeService

במכשירים שבהם מוטמע מצב הדגמה לקמעונאים, אשף ההגדרה מגדיר ערך גלובלי הגדרה Global.DEVICE_DEMO_MODE עד true כדי לציין שהמכשיר עבר למצב קמעונאי. בתאריך כשהגדרה זו מופעלת, RetailDemoModeService יוצר משתמש הדגמה ועובר אליו כשמשתמש 0 מתחיל. מרכז האפליקציות המותאם אישית שצוין במשאב של שכבת-על, ומשבית את SUW. מערכת השרת ו-SystemUI משתמשים גם בדגל הזה כדי לנהל היבטים של מצב קמעונאי.

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

יצרני מכשירים יכולים לציין מרכז אפליקציות מותאם אישית על ידי שינוי של המסגרת המשאב config_demoModeLauncherComponent שצוין בקובץ config.xml באופן הבא.

<!-- Component that is the default launcher when Retail Mode is enabled. -->
<string name="config_demoModeLauncherComponent">com.android.retaildemo/.DemoPlayer</string>

אפליקציית ההדגמה לקמעונאים נמצאת בכתובת /packages/apps/RetailDemo הוא מרכז האפליקציות המותאם אישית שמוגדר כברירת מחדל בפרויקט הקוד הפתוח של Android (AOSP). האפליקציה מחפשת סרטון במחיצת מכשירים, כמו /data/preloads/demo/retail_demo.mp4 ומשמיעים אותו בלופ. כאשר המשתמש נוגע במסך, מרכז האפליקציות המותאם אישית משבית את רכיב הפעילות שלו, שגורם לברירת המחדל של מרכז האפליקציות הפעלה.

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

אשף ההגדרה מחפש גם את הסרטון שהוזכר קודם לכן כדי לספק בשביל להיכנס למצב קמעונאי. אפשר לשנות את SUW כדי לחפש סימן ספציפי ל-OEM (יצרן ציוד מקורי) שמציין שמצב קמעונאי נתמך אם הסרטון אינו חלק מ- את ההדגמה. אם יש מחיצות מערכת A/B, מכילים את סרטון ההדגמה בכתובת /preloads/demo. הפריט הזה מועתק אל /data/preloads/demo בהפעלה הראשונה.

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

אפליקציות שנטענו מראש יכולות להתאים אישית את חוויית השימוש שלהן למצב הדגמה לקמעונאים על ידי התקשרות UserManager.isDemoUser() API כדי לבדוק אם האפליקציה מופעלת בסביבת הדגמה.

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

עדכוני מערכת

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

אפליקציית הדגמה (דמו) לקמעונאים

כדי להטמיע את מצב ההדגמה לקמעונאים, מבוססת על בעלי המכשיר, יש צורך בקר לניהול מדיניות מכשירים תוגדר כבעלים של המכשיר. ה-AOSP מכיל קובץ עזר של אפליקציית RetailDemo הטמעה ב-/packages/apps/RetailDemo.

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

ממשקי API ב-DevicePolicyManager הפעלה של ההרשאה 'בעלי המכשיר' (DO) ו'בעלי הפרופיל' (PO) כדי לאכוף מכשירים שונים . חלק מה-DevicePolicyManager הפונקציות הרלוונטיות למצב ההדגמה לקמעונאים מפורטות בהמשך.

  • יצירה וניהול של משתמשים.

  • מפעילים מחדש את המכשיר.

  • הגדרת חבילות מורשות של LockTask.

  • מתקינים חבילות באמצעות PackageInstaller.

  • חסימת הסרה של חבילות.

  • הפעלת עדכוני מערכת אוטומטיים. המכשירים יורידו ויחילו עדכוני OTA באופן אוטומטי.

  • השבת את מגן המקשים.

  • מניעת הגדרה של סיסמאות או טביעות אצבע.

  • מגדירים קבוצה ברשימת ההיתרים של Settings.Global, Settings.Secure, ו-Settings.System הגדרות.

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

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

    • DISALLOW_MODIFY_ACCOUNTS
    • DISALLOW_USB_FILE_TRANSFER
    • DISALLOW_DEBUGGING_FEATURES
    • DISALLOW_CONFIG_WIFI
    • DISALLOW_CONFIG_BLUETOOTH
    • DISALLOW_INSTALL_UNKNOWN_SOURCES
    • DISALLOW_CONFIG_MOBILE_NETWORKS

עדכון סרטון ההדגמה באינטרנט

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

<!-- URL where the retail demo video can be downloaded from. -->
<string name="retail_demo_video_download_url"></string>

אם צריך להשתמש בסרטונים שונים באזורים שונים, ניתן להגדיר כתובות URL להורדה באמצעות משאבי מחרוזת ספציפיים ללוקאל בקובץ res/values-*/strings.xml. לדוגמה, אם רוצים להשתמש בסרטונים שונים בארה"ב, בריטניה, ניתן למקם כתובות URL מתאימות להורדה res/values-en-rUS/strings.xml וגם res/values-en-rGB/strings.xml, בהתאמה, מוצגת באופן הבא.

  • ב-res/values-en-rUS/strings.xml:

    <string name="retail_demo_video_download_url">download URL for US video goes here</string>
    
  • ב-res/values-en-rGB/strings.xml:

    <string name="retail_demo_video_download_url">download URL for UK video goes here</string>
    

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

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

הנחיות לסרטוני הדגמה

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

לעיון בהגדרות למפתחי Android. של משתמשים, פרופילים וחשבונות, מסמכי תיעוד של Device Policy Manager API ואפליקציה לדוגמה של בעלי המכשיר אפשר לקבל מידע נוסף.

אימות

CTS לא כולל את מצב ההדגמה לקמעונאים כי הוא תכונה אופציונלית. בדיקה חייב להתבצע באופן ידני או באמצעות בדיקות יחידה של אפליקציית ההדגמה.

שיעור הדגמה

הגדרת סשן ההדגמה

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

מצב הדגמה לקמעונאים

איור 2. מצב הדגמה לקמעונאים

הצגת סשן ההדגמה

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

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

  • מתג למצב טיסה.
  • הסרה או שינוי של נקודות גישה ל-Wi-Fi (הגדרות).
  • שינוי הספק (הגדרות).
  • מתבצעת הגדרה של נקודה לשיתוף אינטרנט (Hotspot) (הגדרות).
  • מעבר בין משתמשים.

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

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

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

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

  • בהירות
  • סיבוב אוטומטי
  • פנס
  • Language
  • נגישות

יציאה ממצב ההדגמה לקמעונאים

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