אנדרואיד תומכת במספר משתמשים במכשיר אנדרואיד אחד על ידי הפרדת חשבונות משתמש ונתוני יישומים. לדוגמה, הורים עשויים לאפשר לילדיהם להשתמש בטאבלט המשפחתי, משפחה יכולה לחלוק רכב, או שצוות תגובה קריטי עשוי לשתף מכשיר נייד לתורנות.
טרמינולוגיה
אנדרואיד משתמשת במונחים הבאים בעת תיאור משתמשי וחשבונות אנדרואיד.
כללי
ניהול מכשירי אנדרואיד משתמש בתנאים הכלליים הבאים.
- משתמש . כל משתמש מיועד לשימוש על ידי אדם פיזי אחר. לכל משתמש יש נתוני אפליקציה נפרדים וכמה הגדרות ייחודיות, כמו גם ממשק משתמש למעבר מפורש בין משתמשים. משתמש יכול לרוץ ברקע כאשר משתמש אחר פעיל; המערכת מצליחה לכבות משתמשים כדי לחסוך במשאבים כאשר הדבר מתאים. ניתן ליצור משתמשים משניים ישירות דרך ממשק המשתמש או מאפליקציית ניהול התקנים .
- חשבון . חשבונות כלולים בתוך משתמש אך אינם מוגדרים על ידי משתמש, וגם לא משתמש מוגדר על ידי או מקושר לחשבון נתון כלשהו. משתמשים ופרופילים מכילים חשבונות ייחודיים משלהם, אך אינם נדרשים לחשבונות כדי להיות פונקציונליים. רשימת החשבונות משתנה לפי משתמש. לפרטים, עיין בהגדרת מחלקת חשבון .
- פרופיל . לפרופיל יש נתוני אפליקציה מופרדים אך חולק כמה הגדרות כלל המערכת (לדוגמה, Wi-Fi ו-Bluetooth). פרופיל הוא תת-קבוצה של, וקשור לקיומו של משתמש. למשתמש יכול להיות מספר פרופילים. פרופילים נוצרים באמצעות יישום ניהול התקנים . לפרופיל תמיד יש שיוך בלתי משתנה למשתמש אב, המוגדר על ידי המשתמש שיצר את הפרופיל. פרופילים אינם קיימים מעבר לכל החיים של המשתמש היוצר.
- אפליקציה . נתוני אפליקציה קיימים בתוך כל משתמש משויך. נתוני האפליקציה נמצאים בארגז חול מיישומים אחרים בתוך אותו משתמש. אפליקציות בתוך אותו משתמש יכולות ליצור אינטראקציה זו עם זו באמצעות IPC. לפרטים, עיין ב- Android לארגונים .
קטגוריות של משתמשים
ניהול מכשירי אנדרואיד משתמש בקטגוריות המשתמשים הבאות.
- משתמש מערכת . משתמש ראשון נוסף למכשיר. לא ניתן להסיר את משתמש המערכת אלא באמצעות איפוס להגדרות היצרן והוא פועל תמיד גם כאשר משתמשים אחרים נמצאים בחזית. למשתמש זה יש גם הרשאות והגדרות מיוחדות שרק הוא יכול להגדיר.
- משתמש משני . כל משתמש שנוסף למכשיר מלבד משתמש המערכת. משתמשים משניים ניתנים להסרה (או בעצמם או על ידי משתמש מנהל) ואינם יכולים להשפיע על משתמשים אחרים במכשיר. משתמשים אלה יכולים לרוץ ברקע ולהמשיך להיות בעלי קישוריות רשת.
- משתמש אורח . משתמש משני זמני. למשתמשים אורחים יש אפשרות מפורשת למחוק במהירות את המשתמש האורח כשהשימושיות שלו נגמרת. יכול להיות רק משתמש אורח אחד בכל פעם.
- משתמש מנהל . משתמש שיש לו הרשאה ליצור ולהסיר משתמשים אחרים, כמו גם לשלוט בהגדרות כלליות של ריבוי משתמשים. כברירת מחדל, רק משתמש המערכת הוא מנהל מערכת.
קטגוריות של פרופילים
ניהול מכשירי אנדרואיד משתמש בקטגוריות הבאות של פרופילים.
- פרופיל מנוהל . נוצר על ידי אפליקציה כדי להכיל נתוני עבודה ואפליקציות. הם מנוהלים אך ורק על ידי בעל הפרופיל (האפליקציה שיצרה את פרופיל החברה). משגר, הודעות ומשימות אחרונות משותפים למשתמש האב ולפרופיל החברה.
- פרופיל מוגבל . משתמש בחשבונות המבוססים על משתמש האב, שיכול לשלוט באילו אפליקציות זמינות בפרופיל המוגבל. זמין רק בטאבלטים ובמכשירי טלוויזיה.
סוגי משתמשים
אנדרואיד 11 גיבשה את הסיווג לעיל של משתמשים ופרופילים לסוגי משתמשים מוגדרים היטב, המייצגים את כל סוגי המשתמשים והפרופילים השונים המותרים על ידי תכונת מרובי המשתמשים של Android.
סוגי המשתמשים המוגדרים מראש של AOSP מוגדרים ב- frameworks/base/core/java/android/os/UserManager.java
וכוללים כרגע:
-
android.os.usertype.full.SYSTEM
-
android.os.usertype.full.SECONDARY
-
android.os.usertype.full.GUEST
-
android.os.usertype.full.DEMO
-
android.os.usertype.full.RESTRICTED
-
android.os.usertype.profile.MANAGED
-
android.os.usertype.system.HEADLESS
ליצרני OEM יש את היכולת להגדיר את סוגי המשתמשים הללו על ידי שכבת-על של קובץ frameworks/base/core/res/res/xml/config_user_types.xml
. זה מקל על שינוי תצורת ברירת המחדל עבור כל סוג משתמש, כולל מגבלות ברירת המחדל שלו, סמלים, תגים ומספר המשתמשים המרבי המותר.
בנוסף לסוגי המשתמשים הניתנים להגדרה של AOSP, יצרני OEM יכולים להגדיר סוגי פרופילים חדשים באמצעות הקובץ frameworks/base/core/res/res/xml/config_user_types.xml
. זה מאפשר ליצרני OEM להציג סוגי פרופילים לא מנוהלים משלהם אם תרצה בכך. עם זאת, באחריות ה-OEM לבצע שינויים בפלטפורמה כנדרש כדי לתמוך בשינויים, כולל שינוי כל קוד שבודק פרופילים מנוהלים כך שיטפל כעת בסוג הפרופיל החדש במידת הצורך.
הפעלת ריבוי משתמשים
החל מ-Android 5.0, תכונת ריבוי המשתמשים מושבתת כברירת מחדל. כדי להפעיל את התכונה, יצרני המכשיר חייבים להגדיר שכבת-על של משאבים המחליפה את הערכים הבאים ב- frameworks/base/core/res/res/values/config.xml
:
<!-- Maximum number of supported users --> <integer name="config_multiuserMaximumUsers">1</integer> <!-- Whether Multiuser UI should be shown --> <bool name="config_enableMultiUserUI">false</bool>
כדי להחיל שכבת-על זו ולאפשר משתמשים אורחים ומשניים במכשיר, השתמש בתכונה DEVICE_PACKAGE_OVERLAYS
של מערכת ה-build של Android כדי להחליף את הערכים עבור:
-
config_multiuserMaximumUsers
עם ערך גדול מ1
-
config_enableMultiUserUI
עםtrue
יצרני מכשירים רשאים להחליט על מספר המשתמשים המקסימלי. אם יצרני המכשירים או אחרים שינו הגדרות, עליהם להבטיח עבודה של SMS וטלפוניה כפי שהוגדרו במסמך הגדרת התאימות של Android (CDD).
ניהול מספר משתמשים
ניהול המשתמשים והפרופילים (למעט פרופילים מוגבלים) מתבצע על ידי יישומים המפעילים באופן תוכניתי API במחלקה DevicePolicyManager
כדי להגביל את השימוש.
בתי ספר וארגונים עשויים להעסיק משתמשים ופרופילים כדי לנהל את משך החיים וההיקף של אפליקציות ונתונים במכשירים, תוך שימוש בסוגים המתוארים לעיל בשילוב עם UserManager API כדי לבנות פתרונות ייחודיים המותאמים למקרי השימוש שלהם.
התנהגות מערכת מרובת משתמשים
כאשר משתמשים מתווספים למכשיר, פונקציונליות מסוימת מצטמצמת כאשר משתמש אחר נמצא בחזית. מכיוון שנתוני אפליקציה מופרדים לפי משתמש, המצב של אפליקציות אלו שונה לפי משתמש. לדוגמה, אימייל המיועד לחשבון של משתמש שאינו בפוקוס כעת לא יהיה זמין עד שהמשתמש והחשבון הזה יהיו פעילים במכשיר.
כברירת מחדל, רק למשתמש המערכת יש גישה מלאה לשיחות טלפון והודעות טקסט. המשתמש המשני עשוי לקבל שיחות נכנסות אך אינו יכול לשלוח או לקבל הודעות טקסט. משתמש אדמין חייב להפעיל פונקציות אלה עבור אחרים.
הערה : כדי להפעיל או להשבית את פונקציות הטלפון וה-SMS עבור משתמש משני, עבור אל הגדרות > משתמשים , בחר את המשתמש והשבת את ההגדרה אפשר שיחות טלפון ו-SMS לכבוי.
כמה הגבלות קיימות כאשר משתמש משני נמצא ברקע. לדוגמה, המשתמש המשני ברקע אינו יכול להציג את ממשק המשתמש או להפוך שירותי Bluetooth לפעילים. בנוסף, תהליך המערכת יעצור משתמשים משניים ברקע אם המכשיר זקוק לזיכרון נוסף עבור פעולות במשתמש הקדמי.
בעת העסקת משתמשים מרובים במכשיר אנדרואיד, זכור את ההתנהגות הבאה:
- התראות מופיעות עבור כל החשבונות של משתמש בודד בו-זמנית.
- התראות עבור משתמשים אחרים לא מופיעות עד שהן פעילות.
- כל משתמש מקבל סביבת עבודה להתקנה והצבת אפליקציות.
- לאף משתמש אין גישה לנתוני האפליקציה של משתמש אחר.
- כל משתמש יכול להשפיע על האפליקציות המותקנות עבור כל המשתמשים.
- משתמש מנהל יכול להסיר אפליקציות או אפילו את כל סביבת העבודה שהוקמה על ידי משתמשים משניים.
אנדרואיד 7.0 כולל מספר שיפורים, כולל:
- החלף את פרופיל העבודה . משתמשים יכולים להשבית את הפרופיל המנוהל שלהם (כגון כשהם לא בעבודה). פונקציונליות זו מושגת על ידי עצירת המשתמש; UserManagerService קורא
ActivityManagerNative#stopUser()
. - VPN פעיל תמיד . כעת ניתן להגדיר יישומי VPN ל-תמיד על ידי המשתמש, Device DPC, או Managed Profile DPC (חל רק על יישומי Managed Profile). כאשר מופעל, יישומים אינם יכולים לגשת לרשת הציבורית (הגישה למשאבי הרשת מופסקת עד שה-VPN יתחבר וניתן לנתב חיבורים מעליו). מכשירים שמדווחים על
device_admin
חייבים ליישם VPN תמידי.
לפרטים נוספים על תכונות ניהול מכשירי Android 7.0, עיין ב- Android for Work .
Android Automotive Multi-User
Android Automotive מסתמכת על היישום מרובה-משתמשים של אנדרואיד כדי לספק חווית מכשיר משותפת.
סוגי משתמשים לרכב
בנוסף לסוגי המשתמשים המפורטים לעיל, מבני רכב בולטים עבור סוגי משתמשים אלה:
- משתמש במערכת ללא ראש. משתמש המערכת מארח את כל שירותי המערכת. כדי לתמוך במספר משתמשים ב-Automotive, משתמש המערכת חייב להיות גם חסר ראש . יש רק משתמש אחד ללא ראש. משתמש מערכת ללא ראש:
- חייב לרוץ תמיד ברקע.
- לא ניתן להסיר או לגשת ישירות על ידי המשתמש למעט במקרה של הקצאת מכשיר. לדוגמה, משתמשים לא יכולים לעבור לסוג משתמש זה כדי לבצע משימות כגון הורדת אפליקציות או הוספת חשבונות.
- ניתן לנקות רק על ידי איפוס להגדרות היצרן.
- משתמשים קבועים. זהה למשתמשים משניים , המתוארים לעיל, מלבד שמשתמשים משניים:
- אין לרוץ ברקע (לאחר שהחליפו אותו).
- ניתן ליצור ישירות דרך ממשק המשתמש.
- יש להפריד בין נתוני האפליקציה, אבל לשתף כמה הגדרות במערכת. לדוגמה, Wi-Fi ובלוטות'.
אזהרות
החריגים הבאים חלים על משתמשי מערכת חסרי ראש ומשתמשים רגילים (משניים) ברכב:
- משתמש המערכת חסר הראש אינו תומך בפרופילי עבודה.
- כברירת מחדל, למשתמשים רגילים (משניים) יש גישה מלאה לשיחות טלפון והודעות טקסט.
- כברירת מחדל, משתמשים רגילים (משניים) אינם פועלים ברקע.
הפעלת משתמש מערכת ללא ראש
החל מ-Android 10, ניתן להשתמש בתכונת ריבוי המשתמשים למקרי שימוש ברכב. הבחנות חשובות כוללות:
- משתמש המערכת חסר ראש ופועל רק ברקע.
- משתמשים אנושיים אינם מקיימים אינטראקציה עם משתמש המערכת.
כדי להפעיל את משתמש המערכת ללא ראש, יצרני המכשיר חייבים להפעיל ריבוי משתמשים כמתואר לעיל.
כאשר המשתמש חסר הראש מופעל:- כדי להכריז שהמכשיר הוא רכב, הוסף את התכונה
android.hardware.type.automotive
. - הגדר את
ro.fw.headless_system_user
ל-true
. - הגדר את הערך עבור
config_multiuserMaximumUsers
ל2
(או יותר).
למידע נוסף, ראה תמיכה מרובה משתמשים ברכב.