ASSISTANT |
לפחות אחד מהפרטים הבאים:
- לאפליקציה יש פעילות שמבצעת פעולות עזרה, בהתאם למידע על ההקשר של המשתמש בזמן שהוא ביקש את העזרה (לדוגמה, שם החבילה של האפליקציה הנוכחית בחזית ומידע הקשרי שלה).
- לאפליקציה יש שירות אינטראקציה קולית שפועל תמיד, עם גישה מוגבלת להרשאה
android.permission.BIND_VOICE_INTERACTION , שיכולה לבצע זיהוי קולי ולארח סשנים פעילים של אינטראקציה קולית.
בנוסף, באפליקציה יש דגל מפורש שמציין שהשירות מסוגל לבצע את פעולת הסיוע.
|
BROWSER |
כל:
- באפליקציה יש פעילות שאפליקציות יכולות להפעיל באמצעות בקשות ל-Intent משתמע, שמציגות דף אינטרנט שמתאים לכתובת
http:// .
- האפליקציה צריכה לטפל בניווט בין קישורים. כלומר, אם המשתמש צופה בדף אינטרנט ולוחץ על כתובת
http:// בטקסט, האפליקציה צריכה להיות מסוגלת להציג את התוכן שמתאים לקישור שנבחר בלי התערבות נוספת של המשתמש.
- האפליקציה צריכה להיות מסוגלת לספק לדפי אינטרנט את המידע הנוכחי על המיקום הגיאוגרפי של המכשיר, כשהמידע הזה נדרש והמשתמש מאשר את הבקשה.
|
DIALER |
כל:
- לאפליקציה יש פעילות שאפליקציות יכולות להפעיל באמצעות בקשות של intent משתמע, שמספקות את ממשק המשתמש של השיחה בזמן שהמכשיר נמצא בשיחה.
- האפליקציה יכולה לטפל בכוונות של שיחות נכנסות, להציג למשתמש את המידע שקשור לשיחה (לדוגמה, מספר הטלפון של המתקשר) ולאפשר לו לענות לשיחה או לדחות אותה.
- האפליקציה מספקת למשתמש אמצעי להתחלת שיחות ולצפייה בהיסטוריית השיחות במכשיר.
|
SMS |
כל:
- האפליקציה עומדת בכל הדרישות לאפליקציות SMS.
- לאפליקציה יש פעילות שאפליקציות יכולות להפעיל באמצעות בקשות של כוונות משתמעות (implicit intent), שיכולות לשלוח הודעה למספר טלפון.
- לאפליקציה יש שירות שמוגבל על ידי ההרשאה
android.permission.SEND_RESPOND_VIA_MESSAGE וניתן להפעלה באמצעות כוונות משתמעות, שיכולות להעביר הודעות שהתקבלו מאפליקציית הטלפון כשהמשתמש בוחר להשיב באמצעות הודעה במהלך שיחה נכנסת. האפליקציה יכולה להעביר הודעות דרך מערכת ההודעות שלה.
- לאפליקציה יש שני מקלטי שידור, אחד עם ההרשאה
android.permission.BROADCAST_SMS ואחד עם ההרשאה android.permission.BROADCAST_WAP_PUSH , שיכולים להאזין להודעות SMS ו-MMS מבוססות-טקסט שנשלחות למכשיר, בהתאמה. האפליקציה אחראית לכתיבת ההודעות לספק ה-SMS ולהודעה למשתמשים.
|
EMERGENCY |
כל:
- האפליקציה היא אפליקציית מערכת.
- באפליקציה יש פעילות שבה מוצג למשתמש מידע על מצבי חירום.
כל אחד יכול לעבור למסך הזה באמצעות לחצן החירום בפעילות של חיוג לחירום.
|
HOME |
באפליקציה יש פעילות שיכולה להפעיל את מסך הבית כשהמשתמש לוחץ על
הלחצן הראשי. במסך הבית אמורים להופיע סמלי אפליקציות, ווידג'טים וניווט באמצעות לחצנים או מחוות (לדוגמה, החלקה כלפי מעלה כדי לראות את כל האפליקציות).
|
CALL_REDIRECTION |
לאפליקציה יש שירות שמוגבל על ידי ההרשאה android.permission.BIND_CALL_REDIRECTION_SERVICE , שאפשר לקשר אליה את מסגרת הטלקום. השירות מקבל את מספר הטלפון היוצא ממסגרת הטלקום ומבצע אחת מהפעולות הבאות:
- מאשרים את ביצוע השיחה כמו שהיא.
- שינוי המספר לשיחות יוצאות כדי לנתב אותו דרך מספר פרוקסי.
- מבטלים את השיחה.
|
CALL_SCREENING |
באפליקציה יש שירות שמוגבל על ידי ההרשאה android.permission.BIND_SCREENING_SERVICE ,
שמבצע שתי פונקציות:
- חסימה וסינון של שיחות: השירות יכול לבחור אילו שיחות יישלחו לאפליקציית החייגן בטלפון (ויכול להיות שהן יצלצלו, בהתאם להגדרות 'נא לא להפריע' או עוצמת הקול), ואילו שיחות יישלחו בשקט לתא הקולי.
- זיהוי שיחות: השירות יכול לזהות שיחות ולהציג מידע לגביהן דרך ממשק משתמש.
|
SYSTEM_GALLERY |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- האפליקציה מספקת למשתמשים ממשק משתמש לאחסון, לארגון ולהצגה של סרטונים ותמונות.
|
SYSTEM_AUTOMOTIVE_CLUSTER |
כל:
- האפליקציה היא אפליקציית מערכת ב-Automotive.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- האפליקציה מספקת למשתמשים אפשרות להשתמש בתצוגת לוח המכוונים ברכב (בדרך כלל ליד ההגה) כדי לענות לשיחות טלפון ולגשת לרשימות אנשי הקשר וליומני השיחות.
|
COMPANION_DEVICE_WATCH |
האפליקציה יכולה לשלוח בקשות לשיוך ולניהול של מכשיר שעון (באמצעות ה-API שסופק על ידי המחלקה CompanionDeviceManager ). כשהשעון והאפליקציה מחוברים דרך ממשק המשתמש שמסופק על ידי האפליקציה, המשתמשים יכולים לנהל את השעון מהאפליקציה, כולל סנכרון אנשי הקשר והיומן, וניהול ההתראות ושיחות הטלפון.
|
SYSTEM_AUTOMOTIVE_PROJECTION |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- האפליקציה מאפשרת להקרין את מסך הטלפון על מסך התצוגה ברכב. היא מאפשרת לנהגים לגשת לאפליקציות בטלפונים עם Android ולשלוט בהן, כולל מוזיקה, ניווט, שיחות טלפון וחיפוש, באמצעות מנגנוני קלט ברכב, כולל מגע, פקדים בהגה ופקודות קוליות.
|
SYSTEM_SHELL |
כל:
- האפליקציה היא אפליקציית מערכת שהוקצה לה מזהה המשתמש
Process.SHELL_UID .
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- האפליקציה מספקת ממשק שפועל ברמת שורת הפקודה, כך שהמשתמשים יכולים ליצור אינטראקציה עם מערכת ההפעלה Android. לדוגמה, הצגת התוכן של תיקייה או הפעלת אפליקציות. אפליקציות יכולות להריץ פקודות Shell באופן פרוגרמטי (אם ניתנו ההרשאות הנדרשות), או באמצעות הכלי ADB.
|
SYSTEM_CONTACTS |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- האפליקציה מספקת ממשק משתמש שמאפשר למשתמשים לנהל את אנשי הקשר שלהם (לדוגמה, לראות, לשתף, להוסיף, להסיר או לחפש איש קשר). האפליקציה מעדכנת את ספק אנשי הקשר כשהמשתמש מעדכן את אנשי הקשר שלו מהאפליקציה. המשתמשים יכולים גם להתקשר, לשלוח אימייל או הודעות טקסט לאנשי הקשר שלהם מהאפליקציה.
|
SYSTEM_SPEECH_RECOGNIZER |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- האפליקציה מספקת שירות שיכול לבצע זיהוי דיבור.
- כשהאפליקציה מקבלת סטרימינג של מיקרופון בזמן אמת מאפליקציה אחרת לצורך זיהוי דיבור, היא משייכת נכון את השימוש במיקרופון לאפליקציה שמתקשרת ומעדכנת בהתאם את נתוני הפעולה של האפליקציה.
|
SYSTEM_WIFI_COEX_MANAGER |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- באפליקציה יש שירות שמגדיר באופן דינמי רשימה של ערוצי Wi-Fi שהמכשיר צריך להימנע משימוש בהם בגלל הפרעות סלולריות.
|
SYSTEM_WELLBEING |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- האפליקציה צריכה לספק למשתמשים אפשרות לצמצם את ההסחות ולתת להם נתונים סטטיסטיים על אופן השימוש שלהם במכשיר (לדוגמה, זמן השימוש במסך בשבוע).
|
SYSTEM_TELEVISION_NOTIFICATION_HANDLER |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- האפליקציה צריכה להציג התראות קופצות למשתמשים במכשירי טלוויזיה. בנוסף, האפליקציה צריכה להציג את ההתראות הפעילות הנוכחיות כשנשלחת כוונת
android.app.action.TOGGLE_NOTIFICATION_HANDLER_PANEL (מ-SystemUI).
|
SYSTEM_COMPANION_DEVICE_PROVIDER |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- האפליקציה צריכה להיות מסוגלת לזהות מכשירים היקפיים בסביבתה. חייב להיות לו ממשק משתמש שבו המשתמש יכול לאשר שמכשיר היקפי מסוים צריך להיות משויך לאפליקציה ומנוהל על ידה. כשהמשתמש מאשר, האפליקציה המנהלת מעניקה לאפליקציה המשויכת הרשאה לגשת למכשיר ההיקפי (למשל, השם, הכתובת, הסיווג ומצב הקישור שלו), והיא יכולה להתחיל את תהליך הקישור.
|
SYSTEM_DOCUMENT_MANAGER |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- באפליקציה יש פעילות שמאפשרת למשתמשים לגשת למסמכים קיימים וליצור מסמכים חדשים במכשיר.
- האפליקציה צריכה לעמוד בכל הדרישות שמפורטות בקטע 2.2.3 במסמך Android CDD. תוכנה
בקטע [3.2.3.1/H-0-1].
|
SYSTEM_ACTIVITY_RECOGNIZER |
כל:
|
SYSTEM_UI |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- לאפליקציה יש ממשק שמאפשר למשתמשים ליצור אינטראקציה עם הטלפונים שלהם. לדוגמה, המסך הראשי של הטלפון, הניווט, האפליקציות האחרונות, ההגדרות המהירות, סרגל ההתראות, מסך הנעילה, השליטה בעוצמת הקול.
|
SYSTEM_TELEVISION_REMOTE_SERVICE |
כל:
- האפליקציה היא אפליקציית מערכת ב-Android TV.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- לאפליקציה יש שירות שיכול לתקשר עם מכשיר HID של שלט רחוק לטלוויזיה (למשל, דרך BLE), להחדיר אירועים (למשל, לחיצות על לחצנים) ולשלוח נתונים אחרים (למשל, זרם אודיו ממיקרופון מובנה בשלט) אל הפלטפורמה.
|
SYSTEM_UI_INTELLIGENCE |
כל:
- שירות שמותקן מראש ומספק, באמצעות ממשקי API של מסגרת (ממשקי API ציבוריים או של מערכת), מעבד חכם במכשיר לתכונות של ממשק המשתמש של המערכת (לדוגמה, חיזוי והצגה של האפליקציות הבאות למשתמשים).
- השירות חייב לעמוד בכל הדרישות שמפורטות בקטע 9.8.6 צילום תוכן במסמך ה-CDD של Android.
- לשירות לא יכולה להיות ההרשאה
android.permission.INTERNET . במקום זאת, היא צריכה לגשת לאינטרנט דרך ממשקי API מוגדרים היטב בפרויקט קוד פתוח.
- השירות לא יכול להיקשר לאפליקציות, למעט אפליקציות המערכת הבאות:
Bluetooth, אנשי קשר, מדיה, טלפוניה, SystemUI ורכיבים
שמספקים ממשקי API לאינטרנט. צריך להגדיר כל קשר מותר באופן מפורש דרך ההגדרה
<allow-association> בהגדרת המערכת.
- השירות לא יכול לשתף נתונים עם אפליקציות אלא אם יש פעולה ישירה של המשתמש (לדוגמה, המשתמש לוחץ במפורש על לחצן בכל פעם שהנתונים משותפים).
|
SYSTEM_AMBIENT_AUDIO_INTELLIGENCE |
כל:
- זהה לתנאים של
SYSTEM_UI_INTELLIGENCE , אלא שהשירות שמותקן מראש מספק מעבד חכם במכשיר לאודיו סביבתי (לדוגמה, זיהוי שירים שמושמעים בקרבת המכשיר).
|
SYSTEM_AUDIO_INTELLIGENCE |
כל:
- זהה לתנאים של
SYSTEM_UI_INTELLIGENCE ,
אבל השירות שמותקן מראש
מספק מעבד חכם במכשיר לאודיו (לדוגמה, כתוביות לסרטונים, לפודקאסטים, לשיחות טלפון, לשיחות וידאו ולהודעות קוליות).
|
SYSTEM_NOTIFICATION_INTELLIGENCE |
כל:
- זהים לתנאים של
SYSTEM_UI_INTELLIGENCE ,
אבל השירות שמותקן מראש מספק מעבד חכם במכשיר להתראות
(לדוגמה, הצעת תשובות ופעולות להתראות על הודעות).
|
SYSTEM_TEXT_INTELLIGENCE |
כל:
- זהים לתנאים של
SYSTEM_UI_INTELLIGENCE , אלא שהשירות שמותקן מראש מספק מעבד חכם במכשיר לטקסט (לדוגמה, מספק תרגום בזמן אמת או מילוי אוטומטי).
|
SYSTEM_VISUAL_INTELLIGENCE |
כל:
- זהה לתנאים של
SYSTEM_UI_INTELLIGENCE ,
אבל השירות המובנה מספק מעבד חכם במכשיר לתכונות ויזואליות
שכוללות ניתוח של נתוני המצלמה. לדוגמה, שמירה על המסך של הטלפון במצב פעיל בזמן שהמשתמש מסתכל עליו, או קביעת כיוון המסך האידיאלי על סמך כיוון הפנים של המשתמש מהמצלמה הקדמית במכשיר.
|
COMPANION_DEVICE_APP_STREAMING |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- תרחישי שימוש מותרים:
- הזרמה, העברה או שיקוף של אפליקציות שמאפשרות הזרמה, העברה או שיקוף ממכשיר עם Android, כמו טלפון נייד או טאבלט, למחשב שולחני או למחשב נייד.
- כשמבצעים את החיבור הראשוני ממכשיר א' למכשיר ב':
- ההתאמה חייבת להיות מאושרת באמצעות קוד חד-פעמי שמוצג במכשיר המקור (A) ומוזן במכשיר המחובר (B).
לחלופין, אם בשני המכשירים יש לפחות חשבון אחד תואם ב-AccountManager של Android, המשתמש יכול לאשר את ההתאמה על ידי הזנת הסיסמה של החשבון במכשיר המחובר (B).
- שני המכשירים צריכים להיות קרובים
1 זה לזה במהלך ההתאמה.
- שני המכשירים צריכים להיות קרובים זה לזה
1 בזמן הסטרימינג.
- האפליקציה יכולה ליצור ולנהל ערוצי תקשורת עם מכשירים מחוברים, כדי שהמכשירים יוכלו להחליף נתונים. האפליקציה והמכשירים המחוברים חייבים לעבור אימות אחד מול השני (לדוגמה, על ידי הוכחת הידע שלהם במפתחות משותפים) כדי ליצור את ערוצי התקשורת האלה. ערוצי התקשורת חייבים להיות מוגנים באמצעות הצפנה מקצה לקצה.
- האפליקציה יכולה לשלוח התראות ממכשיר המקור (א) למכשיר המחובר (ב), כדי לאפשר למשתמש לבצע פעולה בהתראות במכשיר המחובר (ב).
- להיות מסוגל להזרים את המטא-נתונים שנדרשים להזרמת אפליקציות למכשיר המחובר (B), כמו רשימת האפליקציות שזמינות במכשיר המקור (A).
- האפשרות להזרים אפליקציות ממכשיר המקור (א) למכשיר המחובר (ב) אחרי שהמשתמש הביע את ההעדפה שלו לעשות זאת בהסכמה מפורשת (במכשיר המקור (א) או במכשיר המחובר (ב)).
- להיות מסוגל להפעיל מחדש (להחדיר) אירועים שקורים באפליקציה שמוזרמת במכשיר המחובר (B) בחזרה במכשיר המקור (A). לדוגמה, הפעלה מחדש של אירוע מגע במכשיר המחובר (B) באותן קואורדינטות כמו במכשיר המקור (A), או הפעלה מחדש של אירוע קלט שהתרחש במכשיר המחובר (B) עם אותה סמנטיקה של קלט כמו במכשיר המקור (A).
- האפליקציה יכולה להחליף את זרם המיקרופון של מכשיר המקור בזרם המיקרופון של מכשיר מחובר בזמן שאפליקציה שמוזרמת משתמשת במיקרופון.
- האפליקציה לוכדת אודיו ממכשיר המקור (א) ומזרימה אותו למכשיר המחובר (ב).
- מומלץ לחסום את הגישה לאפליקציות של הגדרות ולחנויות אפליקציות מהמכשיר המחובר (B).
- החל מ-Android 16, חובה למנוע צילום מסך וקריאת מסך של תוכן רגיש, כמו
חלונות ומשטחים מאובטחים, במכשיר המחובר (B).
- חובה לאמת את התקינות של גרסת מערכת ההפעלה של המכשיר המחובר
(לדוגמה, באמצעות אימות מכשיר כמו ב-
VerifiedBootState ).
- להזרים רק אפליקציות שבהן יש רק חשבון תואם אחד במאגר החשבונות במכשיר (לדוגמה, המחלקה
AccountManager ב-Android) בשני המכשירים. אם
זה לא המצב, צריך לאשר את הסטרימינג באמצעות קוד חד-פעמי
שמוצג במכשיר המקור (A) ומוזן במכשיר המחובר (B).
שימו לב: במקרה של מכשירים שתומכים בריבוי משתמשים (ולא בריבוי חשבונות) עם אותה הפרדה מהימנה של נתונים כמו בריבוי משתמשים ב-Android, משתמש נספר כמכשיר.
- חובה להפסיק את הסטרימינג ולהתנתק מהמכשיר המחובר (B)
באופן מיידי אם תוקף האימות של החשבון במכשיר המחובר
(B) פג או בוטל.
- חובה להפסיק את הסטרימינג ולהתנתק מהמכשיר המחובר (B)
במקרה של פסק זמן של חוסר פעילות במכשיר המחובר (B) שבו התוכן
מוצג. יכול להיות שהמכשיר המחובר ישאיר את המסך שלו דולק במקרים כמו WakeLock, שבהם המסך של מכשיר Android נשאר דולק. חובה להגדיר זמן קצוב לתפוגה של חוסר פעילות. אם למכשיר המחובר (B) אין זמן קצוב לתפוגה במצב לא פעיל, חובה להשתמש בזמן קצוב לתפוגה במצב לא פעיל של 5 דקות לכל היותר.
- אם במכשיר המקור (A) נעשה שימוש ב-LSKF (גורם ידע לביטול נעילת המסך), כשהמסך נעול, האפליקציה לא יכולה להזרים אפליקציות למכשיר מחובר (B) אלא אם למכשיר המחובר (B) יש מסך נעילה והוא לא נעול.
- אם מכשיר המקור (A) מנוהל על ידי אדמין, האפליקציה חייבת לפעול בהתאם למדיניות שהוגדרה על ידי האדמין לגבי הפעלה או השבתה של סטרימינג למכשירים בקרבת מקום (לדוגמה, באמצעות הגדרות
DevicePolicyManager ב-Android).
- חובה לוודא שהמסכים המרוחקים וכל המקורות של אירועי קלט מרוחקים
שייכים לאותו מכשיר לוגי (לדוגמה, מסך מרוחק ומקלדת מחוברת) מנקודת המבט של המשתמש, והאירועים מנותבים בהתאם.
- המשתמש חייב להיות מסוגל להפסיק את הסטרימינג ממכשיר המקור (א'),
לדוגמה, באמצעות לחצן בהתראה קבועה. ההתנהגות הזו מוגבלת על ידי נעילת המסך, אם במכשיר המקור (A) מוגדרת נעילת מסך. חובה להציג את האפשרות הזו באופן קבוע במכשיר המקור (A), כך שהיא תמיד תהיה גלויה ותופיע בחלק העליון של המסך.
- חובה להציג אמצעי עזר במכשיר המקור (א) כשהסטרימינג מתבצע במכשיר אחר, כמו סמל בשורת הסטטוס או התראה קבועה.
|
DEVICE_POLICY_MANAGEMENT |
כל:
- רק יצרני ציוד מקורי יכולים להעניק את התפקיד הזה לאפליקציה. אפליקציות לא יכולות לבקש את התפקיד הזה, כי הוא מיועד להענקה מחוץ לקופסה לשם החבילה שהוגדר על ידי יצרן הציוד המקורי כשהמכשיר נשלח.
- האפליקציה צריכה להיות מסוגלת להקצות פרופיל מנוהל (בעלי הפרופיל) או מכשיר מנוהל (בעלי המכשיר), כולל הורדה והתקנה של לקוח מדיניות המכשיר המתאים כדי להיות בעלי המכשיר או הפרופיל, אם נדרש.
- האפליקציה יכולה לעדכן באופן דינמי משאבים כמו מחרוזות ופריטים גרפיים שמשמשים לניהול מדיניות המכשיר.
- האפליקציה יכולה להיות אפליקציית מערכת שהותקנה מראש או אפליקציה שהורדתם והתקנתם לפני הקצאת ההרשאות.
- במקרים של הקצאת הרשאות לבעלי פרופילים, כשמתקינים את האפליקציה של בעל התפקיד אצל משתמש Android מסוים, צריך להתקין אותה בכל הפרופילים הרלוונטיים של אותו משתמש.
|
SYSTEM_APP_PROTECTION_SERVICE |
כל:
- האפליקציה היא אפליקציית מערכת.
- המטרה היחידה של האפליקציה היא לזהות אפליקציות שעלולות לגרום נזק (אפליקציות שעלולות לסכן משתמשים, נתוני משתמשים או מכשירים, כמו סוסים טרויאניים, פישינג ואפליקציות ריגול) או תוכנה לא רצויה לנייד.
- האפליקציה צריכה לעמוד בכל הדרישות שמפורטות בקטע 9.8.6 במסמך CDD של Android.
נתונים ברמת מערכת ההפעלה ונתונים סביבתיים.
- האפליקציה לא יכולה להצהיר על ההרשאה הרגילה
android.permission.INTERNET . במקום זאת, האפליקציה צריכה לגשת לאינטרנט דרך ממשקי API מוגדרים היטב בפרויקט קוד פתוח.
- האפליקציה לא יכולה להיות מקושרת לאפליקציות אחרות, למעט אפליקציות המערכת הבאות:
הכלי לניהול הרשאות ורכיבים שמספקים ממשקי API של טלפוניה ואינטרנט. צריך להגדיר כל קשר מותר באופן מפורש באמצעות ההגדרה
<allow-association> בקובץ ההגדרות של המערכת.
- האפליקציה לא יכולה לשתף נתונים עם אפליקציות אחרות אלא אם יש פעולה ישירה של המשתמש (לדוגמה, המשתמש לוחץ באופן מפורש על לחצן בכל פעם שהנתונים משותפים).
|
SYSTEM_AUTOMOTIVE_CALENDAR_SYNC_MANAGER |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- האפליקציה צריכה להעביר נתוני יומן מהטלפון של המשתמש (iOS או Android)
למכשיר Android Auto. נתוני היומן האלה צריכים להישמר בספק היומן במכשיר Android Auto.
- האפליקציה צריכה לספק רכיב בממשק המשתמש בטלפון שדרכו המשתמש יכול להפעיל את סנכרון היומן ולבחור את היומנים לסנכרון. האפליקציה צריכה לספק רכיב בממשק המשתמש בטלפון שדרכו המשתמש יכול להשבית את סנכרון היומן.
- האפליקציה צריכה לפעול ללא חיבור לאינטרנט. לדוגמה,
באמצעות חיבורים ישירים חוטיים או אלחוטיים.
|
AUTOMOTIVE_NAVIGATION |
כל:
- באפליקציה יש פעילות שאפליקציות יכולות להפעיל באמצעות בקשות Intent משתמעות, שמציגות למשתמש את המיקום הנוכחי והסביבה שלו.
- לאפליקציה יש פעילות שאפליקציות יכולות להפעיל באמצעות בקשות מרומזות של כוונות (implicit intent), שמאפשרות למשתמש לנווט למיקום גיאוגרפי ספציפי.
- לאפליקציה יש פעילות שמופעלת באשכול הכלים כשהאפליקציה מחזיקה במיקוד הניווט.
הפעילות צריכה להציג את המיקום הנוכחי של המשתמש, את הסביבה שלו, ולאפשר לו לנווט למיקום גיאוגרפי ספציפי.
|
COMPANION_DEVICE_COMPUTER |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- אפליקציות שמאפשרות למשתמשים לשקף התראות ולגשת לתמונות ולמדיה מהטלפון במחשב מחובר.
|
SYSTEM_SETTINGS_INTELLIGENCE |
לפחות אחד מהפרטים הבאים:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- יש לו שירות שמספק תכונות חכמות לאפליקציית ההגדרות, כמו הצעות וחיפוש.
|
NOTES |
כל:
|
COMPANION_DEVICE_GLASSES |
האפליקציה יכולה לשלוח בקשות לשיוך למכשיר משקפיים ולניהול שלו (באמצעות ה-API שסופק על ידי המחלקה CompanionDeviceManager ). כשהמשקפיים והאפליקציה מחוברים באמצעות ממשק המשתמש שסופק על ידי CDM, המשתמשים יכולים לנהל את המשקפיים על ידי מתן גישה לאנשי הקשר והרשאה לנהל התראות ושיחות טלפון.
|
COMPANION_DEVICE_NEARBY_DEVICE_STREAMING |
כל:
- האפליקציה היא אפליקציית מערכת.
- רק יצרני ציוד מקורי (OEM) יכולים להעניק את התפקיד הזה לאפליקציה.
- תרחישי שימוש מותרים:
- הזרמת אפליקציות ממכשיר מבוסס-Android, כמו טלפון נייד או טאבלט, לרכב.
- סטרימינג של אפליקציות ממכשיר מבוסס-Android, כמו טלפון נייד או טאבלט, למכשיר XR.
- כשמבצעים את החיבור הראשוני ממכשיר א' למכשיר ב':
- ההתאמה חייבת להיות מאושרת באמצעות קוד חד-פעמי שמוצג במכשיר המקור (A) ומוזן במכשיר המחובר (B).
לחלופין, אם בשני המכשירים יש לפחות חשבון אחד תואם ב-AccountManager של Android, המשתמש יכול לאשר את ההתאמה על ידי הזנת הסיסמה של החשבון במכשיר המחובר (B).
- שני המכשירים צריכים להיות קרובים
1 זה לזה במהלך ההתאמה.
- שני המכשירים צריכים להיות קרובים זה לזה
1 בזמן הסטרימינג.
- האפליקציה יכולה ליצור ולנהל ערוצי תקשורת עם מכשירים מחוברים, כדי שהמכשירים יוכלו להחליף נתונים. האפליקציה והמכשירים המחוברים חייבים לעבור אימות אחד מול השני (לדוגמה, על ידי הוכחת הידע שלהם במפתחות משותפים) כדי ליצור את ערוצי התקשורת האלה. ערוצי התקשורת חייבים להיות מוגנים באמצעות הצפנה מקצה לקצה.
- האפליקציה יכולה לשלוח התראות ממכשיר המקור (א) למכשיר המחובר (ב), כדי לאפשר למשתמש לבצע פעולה בהתראות במכשיר המחובר (ב).
- להיות מסוגל להזרים את המטא-נתונים שנדרשים להזרמת אפליקציות למכשיר המחובר (B), כמו רשימת האפליקציות שזמינות במכשיר המקור (A).
- האפשרות להזרים אפליקציות ממכשיר המקור (א) למכשיר המחובר (ב) אחרי שהמשתמש הביע את ההעדפה שלו לעשות זאת בהסכמה מפורשת (במכשיר המקור (א) או במכשיר המחובר (ב)).
- להיות מסוגל להפעיל מחדש (להחדיר) אירועים שקורים באפליקציה שמוזרמת במכשיר המחובר (B) בחזרה במכשיר המקור (A). לדוגמה, הפעלה מחדש של אירוע מגע במכשיר המחובר (B) באותן קואורדינטות כמו במכשיר המקור (A), או הפעלה מחדש של אירוע קלט שהתרחש במכשיר המחובר (B) עם אותה סמנטיקה של קלט כמו במכשיר המקור (A).
- האפליקציה יכולה להחליף את זרם המיקרופון של מכשיר המקור בזרם המיקרופון של מכשיר מחובר בזמן שאפליקציה שמוזרמת משתמשת במיקרופון.
- האפליקציה לוכדת אודיו ממכשיר המקור (א) ומזרימה אותו למכשיר המחובר (ב).
- מומלץ לחסום את הגישה לאפליקציות של הגדרות ולחנויות אפליקציות מהמכשיר המחובר (B).
- החל מ-Android 25Q2, חובה למנוע צילומי מסך וקריאת מסך של תוכן רגיש, כמו
חלונות ומשטחים מאובטחים, במכשיר המחובר (B).
- חובה לאמת את התקינות של גרסת מערכת ההפעלה של המכשיר המחובר
(לדוגמה, באמצעות אימות מכשיר כמו ב-
VerifiedBootState ).
- להזרים רק אפליקציות שבהן יש רק חשבון תואם אחד במאגר החשבונות במכשיר (לדוגמה, המחלקה
AccountManager ב-Android) בשני המכשירים. אם
זה לא המצב, צריך לאשר את הסטרימינג באמצעות קוד חד-פעמי
שמוצג במכשיר המקור (A) ומוזן במכשיר המחובר (B).
שימו לב: במקרה של מכשירים שתומכים בריבוי משתמשים (ולא בריבוי חשבונות) עם אותה הפרדה מהימנה של נתונים כמו בריבוי משתמשים ב-Android, משתמש נספר כמכשיר.
- חובה להפסיק את הסטרימינג ולהתנתק מהמכשיר המחובר (B)
באופן מיידי אם תוקף האימות של החשבון במכשיר המחובר
(B) פג או בוטל.
- חובה להפסיק את הסטרימינג ולהתנתק מהמכשיר המחובר (B)
במקרה של פסק זמן של חוסר פעילות במכשיר המחובר (B) שבו התוכן
מוצג. יכול להיות שהמכשיר המחובר ישאיר את המסך שלו דולק במקרים כמו WakeLock, שבהם המסך של מכשיר Android נשאר דולק. חובה להגדיר זמן קצוב לתפוגה של חוסר פעילות. אם למכשיר המחובר (B) אין זמן קצוב לתפוגה במצב לא פעיל, חובה להשתמש בזמן קצוב לתפוגה במצב לא פעיל של 5 דקות לכל היותר.
- אם במכשיר המקור (A) נעשה שימוש ב-LSKF (גורם ידע לביטול נעילת המסך), כשהמסך נעול, האפליקציה לא יכולה להזרים אפליקציות למכשיר מחובר (B) אלא אם למכשיר המחובר (B) יש מסך נעילה והוא לא נעול.
- אם מכשיר המקור (A) מנוהל על ידי אדמין, האפליקציה חייבת לפעול בהתאם למדיניות שהוגדרה על ידי האדמין לגבי הפעלה או השבתה של סטרימינג למכשירים בקרבת מקום (לדוגמה, באמצעות הגדרות
DevicePolicyManager ב-Android).
- חובה לוודא שהמסכים המרוחקים וכל המקורות של אירועי קלט מרוחקים
שייכים לאותו מכשיר לוגי (לדוגמה, מסך מרוחק ומקלדת מחוברת) מנקודת המבט של המשתמש, והאירועים מנותבים בהתאם.
- המשתמש חייב להיות מסוגל להפסיק את הסטרימינג ממכשיר המקור (א'),
לדוגמה, באמצעות לחצן בהתראה קבועה. ההתנהגות הזו מוגבלת על ידי נעילת המסך, אם במכשיר המקור (A) מוגדרת נעילת מסך. חובה להציג את האפשרות הזו באופן קבוע במכשיר המקור (A), כך שהיא תמיד תהיה גלויה ותופיע בחלק העליון של המסך.
- חובה להציג אמצעי עזר במכשיר המקור (א) כשהסטרימינג מתבצע במכשיר אחר, כמו סמל בשורת הסטטוס או התראה קבועה.
|
WALLET |
אחת מהאפשרויות:
- באפליקציה יש שירות NFC APDU שרושם באופן סטטי לפחות AID אחד בקטגוריה PAYMENT.
- האפליקציה מטמיעה מופע של
QuickAccessWalletService .
|