לדעת אילו חבילות גלויות באופן אוטומטי

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

סוגי האפליקציות שמוצגות באופן אוטומטי

סוגי האפליקציות הבאים תמיד גלויים לאפליקציה שלכם, גם אם האפליקציה שלכם מטרגטת ל-Android 11 (רמת API 30) ומעלה:

  • האפליקציה שלכם.
  • חבילות מערכת מסוימות, כמו ספק המדיה, שמטמיעות פונקציונליות ליבה של Android.
  • האפליקציה שדרכה הותקנה האפליקציה שלכם.
  • כל אפליקציה שמפעילה פעילות באפליקציה שלכם באמצעות ה-method‏ startActivityForResult(), כפי שמתואר במדריך בנושא קבלת תוצאה מפעילות.
  • כל אפליקציה שמפעילה שירות באפליקציה שלכם או מקושרת אליו.
  • כל אפליקציה שניגשת לספק לניהול גישה באפליקציה שלכם.
  • כל אפליקציה שיש לה ספק לניהול גישה, שלאפליקציה שלכם ניתנו הרשאות URI כדי לגשת אליו.
  • כל אפליקציה שמקבלת קלט מהאפליקציה שלכם. המקרה הזה רלוונטי רק כשהאפליקציה שלכם מספקת קלט בתור עורך שיטת קלט.

חבילות מערכת שגלויות באופן אוטומטי

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

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

adb shell dumpsys package queries

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