<application>

תחביר:
<application android:allowTaskReparenting=["true" | "false"]
             android:allowBackup=["true" | "false"]
             android:allowClearUserData=["true" | "false"]
             android:allowCrossUidActivitySwitchFromBelow=["true" | "false"]
             android:allowNativeHeapPointerTagging=["true" | "false"]
             android:appCategory=["accessibility" | "audio" | "game" |
             "image" | "maps" | "news" | "productivity" | "social" | "video"]
             android:backupAgent="string"
             android:backupInForeground=["true" | "false"]
             android:banner="drawable resource"
             android:dataExtractionRules="string resource"
             android:debuggable=["true" | "false"]
             android:description="string resource"
             android:enabled=["true" | "false"]
             android:extractNativeLibs=["true" | "false"]
             android:fullBackupContent="string"
             android:fullBackupOnly=["true" | "false"]
             android:gwpAsanMode=["always" | "never"]
             android:hasCode=["true" | "false"]
             android:hasFragileUserData=["true" | "false"]
             android:hardwareAccelerated=["true" | "false"]
             android:icon="drawable resource"
             android:isGame=["true" | "false"]
             android:isMonitoringTool=["parental_control" | "enterprise_management" |
             "other"]
             android:killAfterRestore=["true" | "false"]
             android:largeHeap=["true" | "false"]
             android:label="string resource"
             android:logo="drawable resource"
             android:manageSpaceActivity="string"
             android:name="string"
             android:networkSecurityConfig="xml resource"
             android:permission="string"
             android:persistent=["true" | "false"]
             android:process="string"
             android:restoreAnyVersion=["true" | "false"]
             android:requestLegacyExternalStorage=["true" | "false"]
             android:requiredAccountType="string"
             android:resizeableActivity=["true" | "false"]
             android:restrictedAccountType="string"
             android:supportsRtl=["true" | "false"]
             android:taskAffinity="string"
             android:testOnly=["true" | "false"]
             android:theme="resource or theme"
             android:uiOptions=["none" | "splitActionBarWhenNarrow"]
             android:usesCleartextTraffic=["true" | "false"]
             android:vmSafeMode=["true" | "false"] >
    . . .
</application>
בתוך:
<manifest>
יכול להכיל:
<activity>
<activity-alias>
<meta-data>
<service>
<receiver>
<profileable>
<provider>
<uses-library>
<uses-native-library>
תיאור:

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

רבים מהמאפיינים האלה, icon, label, permission, process taskAffinity ו-allowTaskReparenting, מגדירים ערכי ברירת מחדל בשביל המאפיינים המתאימים של הרכיבים שמרכיבים את הרכיב. אחר, כמו debuggable, enabled, description וגם allowClearUserData, מגדירים ערכים לאפליקציה בכללותה הרכיבים לא משנים אותם.

מאפיינים
android:allowTaskReparenting
האם פעילויות שהאפליקציה מגדירה יכולות לעבור מהן המשימה שהובילה אותם למשימה שיש להם עניין בה, הוא הבא בתור לחזית. הכתובת היא "true" אם הם יכולים לזוז, ו "false" אם הם צריכים להישאר במשימה שבה הם התחילו. ערך ברירת המחדל הוא "false".

<activity> לרכיב יש משלו allowTaskReparenting שיכול לשנות את הערך שהוגדר כאן.

android:allowBackup

האם לאפשר לאפליקציה להשתתף בגיבוי ולשחזר את התשתית. אם הערך של המאפיין הזה הוא "false", לא ומתבצעים גיבוי או שחזור של האפליקציה, אפילו גיבוי של המערכת המלאה, שאחרת גורם לשמירה של כל נתוני האפליקציות באמצעות adb. ערך ברירת המחדל של המאפיין הזה הוא "true".

הערה: לגבי אפליקציות שמטרגטות את Android 12 (רמת API 31) ואילך, ההתנהגות הזו קיימת משתנה. במכשירים של יצרני מכשירים מסוימים אי אפשר להשבית את ההעברה ממכשיר למכשיר של קובצי האפליקציה שלכם.

עם זאת, אפשר להשבית את הגיבוי והשחזור מבוססי-הענן של קובצי האפליקציה באמצעות ההגדרה את המאפיין הזה ל-"false", גם אם האפליקציה מטרגטת את Android 12 (רמת API 31) או גבוהה יותר.

מידע נוסף זמין במאמר הקטע גיבוי ושחזור של הדף שמתאר שינויים בהתנהגות של אפליקציות שמטרגטות ל-Android 12 (רמת API 31) או גבוהה יותר.

android:allowClearUserData

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

הערה: רק אפליקציות שהן חלק מתמונת המערכת להצהיר על המאפיין הזה במפורש. אפליקציות צד שלישי לא יכולות לכלול את הטקסט הזה בקובצי המניפסט.

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

android:allowCrossUidActivitySwitchFromBelow

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

החל מרמת SDK לטירגוט Build.VERSION_CODES.VANILLA_ICE_CREAM, אפליקציות ייתכן שנחסום את האפשרות להתחיל פעילויות חדשות או לסיים את המשימה, אלא אם הפעילות המובילה של משימה כזו שייכת לאותו UID מטעמי אבטחה.

הגדרת הסימון true תאפשר לאפליקציית ההפעלה להתעלם מההגבלה אם הפעילות הזו נמצאת בראש הרשימה. אפליקציות שתואמות ל-UID של הפעילות הזו תמיד פטורות.

מידע נוסף זמין במאמר השקות של פעילות מאובטחת ברקע.

android:allowNativeHeapPointerTagging

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

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

למידע נוסף, ראו סמנים מתויגים.

android:appCategory

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

חייב להיות אחד מהערכים הקבועים הבאים.

ערךתיאור
accessibilityאפליקציות שהן בעיקר אפליקציות נגישות, כמו קוראי מסך.
audioאפליקציות שפועלות בעיקר עם אודיו או מוזיקה, כמו נגני מוזיקה.
gameאפליקציות שהן בעיקר משחקים.
imageאפליקציות שפועלות בעיקר עם תמונות או עם תמונות, כמו אפליקציות של המצלמה או של הגלריה.
mapsאפליקציות שהן בעיקר אפליקציות מיפוי, כמו אפליקציות ניווט.
newsאפליקציות שהן בעיקר אפליקציות של חדשות, כמו עיתונים, כתבי עת או אפליקציות ספורט.
productivityאפליקציות שהן בעיקר אפליקציות לשיפור הפרודוקטיביות, כמו אחסון בענן או אפליקציות לעבודה.
socialאפליקציות שהן בעיקר אפליקציות של רשתות חברתיות, כמו אפליקציות של העברת הודעות, תקשורת, אימייל או רשתות חברתיות.
videoאפליקציות שעובדות בעיקר עם סרטונים או סרטים, כמו אפליקציות של וידאו בסטרימינג.

android:backupAgent
שם המחלקה שבה מיושמת סוכן הגיבוי של האפליקציה, תת-מחלקה של BackupAgent. ערך המאפיין הוא שם מחלקה מלא, כמו "com.example.project.MyBackupAgent". עם זאת, כקיצור, אם התו הראשון של השם הוא נקודה, לדוגמה, ".MyBackupAgent", הוא מצורף אל שם החבילה שמצוין ב <manifest> לרכיב מסוים.

אין ברירת מחדל. השם חייב להיות ספציפי.

android:backupInForeground
מציין פעולות של גיבוי אוטומטי יכולים להתבצע באפליקציה הזו גם אם היא מקבילה לחזית . המערכת משביתה אפליקציה במהלך פעולת הגיבוי האוטומטי, לכן חשוב להשתמש במאפיין הזה בזהירות. הגדרת הסימון הזה ל-"true" עלולה להשפיע על האפליקציה התנהגות בזמן שהאפליקציה פעילה.

ערך ברירת המחדל הוא "false", כלומר מערכת ההפעלה לא לגבות את האפליקציה כשהיא פועלת בחזית, למשל אפליקציית מוזיקה. שמשמיעה מוזיקה באופן פעיל באמצעות שירות מצב startForeground().

android:banner
משאב לשרטוט לספק מודעת באנר גרפית מורחבת עבור הפריט המשויך אליו. לשימוש עם התג <application> לאספקת באנר ברירת מחדל לכל הפעילויות באפליקציה או עם <activity> כדי לספק באנר לפעילות ספציפית.

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

מאפיין זה מוגדר כהפניה למשאב ניתן להזזה שמכיל את התמונה, למשל "@drawable/banner". אין מודעת באנר שמוגדרת כברירת מחדל.

מידע נוסף זמין במאמר מספקים באנר למסך הבית.

android:dataExtractionRules

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

מידע נוסף על הפורמט של קובץ XML זמין במאמר גיבוי ושחזור.

android:debuggable
אם אפשר לנפות באגים באפליקציה, גם כשהיא פועלת במכשיר במצב משתמש. השעה היא "true" אם זה יכול להיות ו-"false" אם לא, ערך ברירת המחדל הוא "false".
android:description
טקסט קריא למשתמש לגבי האפליקציה, ארוך יותר ותיאורי יותר מהתווית של האפליקציה. הערך מוגדר כהפניה למשאב של מחרוזת. להבדיל מהתווית, היא לא יכולה להיות מחרוזת גולמית. אין ערך ברירת מחדל.
android:enabled
האם מערכת Android יכולה ליצור רכיבים של את האפליקציה. השעה היא "true" אם אפשר, ו-"false" אם לא, אם הערך הוא "true", המאפיין enabled קובע אם הרכיב הזה מופעל. אם הערך הוא "false", הוא מבטל את ערכים ספציפיים לרכיב, וכל הרכיבים מושבתים.

ערך ברירת המחדל הוא "true".

android:extractNativeLibs

החל מ-AGP 4.2.0, אפשרות ה-DSL useLegacyPackaging מחליפה את מאפיין המניפסט extractNativeLibs. צריך להשתמש ב-useLegacyPackaging בקובץ build.gradle של האפליקציה במקום extractNativeLibs בקובץ המניפסט כדי להגדיר ספריית נייטיב התנהגות דחיסה. מידע נוסף זמין בנתוני הגרסה להשתמש ב-DSL כדי לארוז ספריות מקוריות דחוסות.

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

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

android:fullBackupContent
המאפיין הזה מפנה לקובץ XML שמכיל כללי גיבוי מלאים עבור גיבוי אוטומטי. הכללים האלה קובעים אילו קבצים יגובו. מידע נוסף זמין במאמר תחביר של הגדרות XML לגיבוי אוטומטי.

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

android:fullBackupOnly
המאפיין הזה מציין אם להשתמש גיבוי אוטומטי במכשירים במקומות שבהם הוא זמין. אם המדיניות מוגדרת לערך "true", ביצועי האפליקציה 'גיבוי אוטומטי' כשהוא מותקן במכשיר עם Android 6.0 (רמת API 23) או גבוהה יותר. במכשירים ישנים יותר, האפליקציה מתעלמת מהמאפיין הזה ומבצעת גיבויים של מפתח/ערך.

ערך ברירת המחדל הוא "false".

android:gwpAsanMode
המאפיין הזה מציין אם להשתמש GWP-ASan, תכונה של הקצאת זיכרון נייטיב שעוזרת למצוא באגים מסוג use-after-free ו-heap-buffer-overflow.

ערך ברירת המחדל הוא "never".

android:hasCode
אם האפליקציה מכילה קוד DEX כלשהו – כלומר קוד שמשתמש Kotlin או Java. אם כן, הערך הוא "true", ואם לא, הערך הוא "false". כאשר הערך הוא "false", המערכת לא מנסה לטעון אפליקציה בהפעלה של רכיבים. ערך ברירת המחדל הוא "true".

אם האפליקציה כוללת קוד מקורי (C/C++ ) אבל לא קוד DEX, מוגדרת כ-"false". אם מוגדר לערך "true" כשה-APK לא מכיל קוד DEX, יכול להיות שטעינת האפליקציה תיכשל.

הנכס הזה צריך להביא בחשבון את הקוד שכלול באפליקציה עד של יחסי התלות. אם האפליקציה תלויה ב-AAR שמשתמש קוד Java/Kotlin או ישירות ב-JAR, app:hasCode חייב להיות "true", או מוחרגת כהגדרת ברירת המחדל.

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

android:hasFragileUserData
אם להציג למשתמש הודעה ל: לשמור את נתוני האפליקציה כשהמשתמש מסיר את האפליקציה. ערך ברירת המחדל הוא "false".
android:hardwareAccelerated
האם רינדור עם האצת חומרה מופעל לכולם הפעילויות והתצוגות באפליקציה הזו. השעה היא "true" אם הוא מופעל ו-"false" אם לא. ערך ברירת המחדל הוא "true" אם מגדירים minSdkVersion או targetSdkVersion ל-"14" ומעלה. אחרת, הערך יהיה "false".

החל מ-Android 3.0 (רמת API 11), כלי לרינדור OpenGL עם האצת חומרה זמין לאפליקציות כדי לשפר את הביצועים של גרפיקה דו-ממדית נפוצה ב-AI. כאשר מופעל כלי עיבוד שמואץ באמצעות חומרה, רוב הפעולות ביחידות 'לוח הציור', 'צבע', Xfermode , ColorFilter , Shader ו-מצלמה.

כך מקבלים אנימציות חלקות יותר, גלילה חלקה יותר ושיפורים רספונסיביות באופן כללי, גם לאפליקציות שלא משתמשות באופן מפורש ספריות OpenGL של ה-framework.

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

מידע נוסף זמין במאמר שיפור המהירות באמצעות חומרה מותאמת אישית.

android:icon
סמל של האפליקציה כולה וסמל ברירת המחדל עבור כל אחד מהרכיבים של האפליקציה. ראו את האדם הפרטי מאפייני icon של <activity>, <activity-alias>, <service>, <receiver>, וגם רכיבי <provider>.

מאפיין זה מוגדר כהפניה למשאב ניתן להזזה שמכיל את התמונה, למשל "@drawable/icon". אין סמל ברירת מחדל.

android:isGame
לא משנה אם האפליקציה היא משחק. המערכת עשויה לקבץ יחד אפליקציות שמסווגות בתור משחקים, או להציג אותם בנפרד מאפליקציות אחרות. ערך ברירת המחדל הוא "false".
android:isMonitoringTool

מעיד על כך שהאפליקציה הזו נועדה לעקוב אחרי אנשים אחרים.

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

אין ערך ברירת מחדל. המפתח צריך לציין אחד מהערכים הבאים:

ערךתיאור
"parental_control"אפליקציה מיועדת לבקרת הורים וממוקדת במיוחד להורים שרוצים לשמור על ילדיהם בטוחים.
"enterprise_management"אפליקציה מתאים לארגונים שרוצים לנהל מכשירים שניתנו לעובדים ולעקוב אחריהם.
"other"האפליקציה מיועדת לשימוש רישיות שלא צוין אחרת בטבלה הזו.
android:killAfterRestore

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

ברירת המחדל היא "true" – כלומר אחרי היישום מסיים לעבד את הנתונים במהלך שחזור מערכת מלאה, והוא מסתיים.

android:largeHeap

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

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

כדי לשלוח שאילתה על גודל הזיכרון הזמין בזמן ריצה, צריך להשתמש בשיטות getMemoryClass() או getLargeMemoryClass().

android:label
תווית קריאה למשתמש עבור האפליקציה כולה וברירת המחדל התיוג האוטומטי של כל אחד מרכיבי האפליקציה. ראו את האדם הפרטי מאפייני label של <activity>, <activity-alias>, <service>, <receiver>, וגם רכיבי <provider>.

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

android:logo
לוגו של האפליקציה כולה ולוגו ברירת המחדל לפעילויות. מאפיין זה מוגדר כהפניה למשאב ניתן להזזה שמכיל את התמונה, למשל "@drawable/logo". אין לוגו שמוגדר כברירת מחדל.
android:manageSpaceActivity
השם המוגדר במלואו של קטגוריית משנה Activity שהמערכת מושקת כדי לאפשר למשתמשים לנהל את הזיכרון שהאפליקציה משתמשת בו במכשיר. הפעילות מוצהרת גם עם רכיב <activity>.
android:name
השם המוגדר במלואו של Application מחלקה משנית הוטמעה עבור האפליקציה. כאשר בתהליך הבקשה מופעלת, המחלקה הזו נוצרת לפני רכיבים.

המחלקה המשנית היא אופציונלית. ברוב האפליקציות אין צורך בו. כאשר אין מחלקה משנית, Android משתמש במופע של הבסיס כיתה אחת (Application).

android:networkSecurityConfig

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

המאפיין הזה נוסף ברמת API 24.

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

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

android:persistent
האפליקציה יכולה להישאר פועלת כל הזמן. זו "true" אם כן, ו-"false" אם לא. ערך ברירת המחדל "false". בדרך כלל, אפליקציות לא מגדירות את הדגל הזה. מצב ההתמדה מיועד רק לאפליקציות מערכת מסוימות.
android:process
השם של התהליך שבו כל רכיבי האפליקציה פועלים. כל רכיב יכול לשנות את ברירת המחדל הזו על ידי הגדרת process משלו .

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

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

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

android:restoreAnyVersion
מציין שהאפליקציה מוכנה לנסות לשחזר קבוצת נתונים מגובים, גם אם הגיבוי מאוחסן בגרסה חדשה יותר של האפליקציה מזו שמותקנת כרגע במכשיר. ההגדרה המאפיין הזה ל-"true" מאפשר למנהל הגיבוי לבצע שחזור גם אם חוסר התאמה בין גרסאות מרמז על כך שהנתונים לא תואמת. חשוב להשתמש באפשרות הזו בזהירות!

ערך ברירת המחדל של המאפיין הזה הוא "false".

android:requestLegacyExternalStorage

האם האפליקציה רוצה לבטל את ההצטרפות נפח אחסון בהיקף.

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

android:requiredAccountType
קביעת סוג החשבון שהאפליקציה צריכה כדי לפעול. אם נדרש עבור האפליקציה Account, הערך של המאפיין הזה חייב שתואמים לכלי לאימות החשבון הסוג שהאפליקציה משתמשת בו, כפי שהוגדר על ידי AuthenticatorDescription, כמו "com.google".

ערך ברירת המחדל הוא null ומציין שהיישום יכולות לפעול בלי חשבונות.

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

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

המאפיין הזה נוסף ברמת API 18.

android:resizeableActivity

מציינת אם האפליקציה תומכת במצב ריבוי חלונות. שלך יכול להגדיר את המאפיין הזה <activity> או רכיב <application>.

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

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

באפליקציות שמטרגטות לרמת API 24 ומעלה, ברירת המחדל היא "true".

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

  • מסכים גדולים (sw >= 600dp): כל האפליקציות תומכות במצב ריבוי חלונות. התכונה מציינת האם ניתן לשנות את גודל האפליקציה, ולא האם האפליקציה תומכת במצב ריבוי חלונות. אם המיקום resizeableActivity="false", האפליקציה עוברת למצב תאימות בעת הצורך בהתאם למידות התצוגה.
  • מסכים קטנים (sw < 600dp): אם resizeableActivity="true" והמינימום הרוחב והגובה המינימלי של הפעילות העיקרית עומדים בדרישות לגבי ריבוי חלונות, האפליקציה תומכת במצב ריבוי חלונות. אם הערך של resizeableActivity="false" הוא לא, האפליקציה לא לתמוך במצב ריבוי חלונות, ללא קשר לרוחב ולגובה המינימליים של הפעילות.

הערה: יצרני מכשירים יכולים לשנות את רמת ה-API ברמה 31 או התנהגות המשתמשים.

המאפיין הזה נוסף ברמת API 24.

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

android:restrictedAccountType
ציון סוג החשבון שנדרש על ידי האפליקציה הזו ומציין שפרופילים מוגבלים יכולים לגשת לחשבונות ששייכים למשתמש של הבעלים. אם לאפליקציה נדרשת Account ופרופילים מוגבלים יכולים לגשת לחשבונות של המשתמש הראשי, הערך של המאפיין הזה צריך שתואמים לסוג מאמת החשבון שמשמש את האפליקציה, כמו מוגדר על ידי AuthenticatorDescription, למשל "com.google".

ערך ברירת המחדל הוא null ומציין שהאפליקציה יכולה לפעול בלי אף אחד. חשבונות.

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

המאפיין הזה נוסף ברמת API 18.

android:supportsRtl

מצהיר אם האפליקציה מוכנה לתמוך בפריסות מימין לשמאל (RTL).

אם הערך שהוגדר הוא "true" ועם targetSdkVersion מוגדר ל-17 ומעלה, ממשקי API שונים מסוג RTL מופעל ומשמש את המערכת כדי שהאפליקציה תוכל להציג פריסות RTL. אם המדיניות מוגדרת לערך "false" או אם המדיניות targetSdkVersion מוגדרת לערך 16 ומטה, המערכת מתעלמת מממשקי ה-API של RTL. או שאין להם השפעה, והאפליקציה שלך פועלת באותו אופן ללא קשר לפריסה המשויך לבחירת הלוקאל של המשתמש. כלומר, הפריסות שלך תמיד משמאל לימין.

ערך ברירת המחדל של המאפיין הזה הוא "false".

המאפיין הזה נוסף ברמת API 17.

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

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

android:testOnly
מציין אם האפליקציה הזו מיועדת למטרות בדיקה בלבד. לדוגמה, הוא עלול לחשוף פונקציונליות או נתונים מחוץ לעצמו שעלולים לגרום אבל להיות שימושי לבדיקה. חבילת APK מהסוג הזה מתקינים רק עד adb. אי אפשר לפרסם אותה ב-Google Play.

מערכת Android Studio מוסיפה את המאפיין הזה באופן אוטומטי כשלוחצים על הפעלה .

android:theme
הפניה למשאב סגנון שמגדיר עיצוב ברירת מחדל לכולם הפעילויות השונות באפליקציה. פעילויות ספציפיות יכולות לבטל ברירת המחדל על ידי הגדרה של theme משלהם . למידע נוסף, ראו סגנונות ועיצובים.
android:uiOptions
אפשרויות נוספות לממשק המשתמש של פעילות. חייב להיות אחד מהערכים הבאים:
ערךתיאור
"none"אין אפשרויות נוספות לממשק המשתמש. (זוהי ברירת המחדל)
"splitActionBarWhenNarrow"הוספת בר ב- בתחתית המסך כדי להציג פעולות לביצוע בסרגל האפליקציות, שנקרא גם סרגל הפעולות, כאשר מוגבל לשטח אופקי, למשל במצב תצוגה לאורך במכשיר הנייד. במקום מספר הפעולות לביצוע שמופיעות בסרגל האפליקציה שבחלק העליון של המסך, בסרגל האפליקציה מתפצל לקטע הניווט העליון ולסרגל התחתון של פעולות לביצוע. כלומר, אפשרות סבירה יש שטח פנוי לפעולות לביצוע ולניווט ולשם הרכיבים שלמעלה. אפשרויות בתפריט לא מחולקות בין שני העמודות. הן תמיד מופיעות את כל החלקים.

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

המאפיין הזה נוסף ברמת API 14.

android:usesCleartextTraffic
מציינים אם יש כוונה להשתמש באפליקציה בתנועה ברשת טקסט ללא הצפנה, כמו טקסט ללא הצפנה ב-HTTP. ערך ברירת המחדל של אפליקציות שמטרגטות את רמת ה-API 27 ומטה הוא "true". אפליקציות ברירת המחדל של רמת API 28 ומעלה היא "false".

כשהמאפיין מוגדר ל-"false", רכיבי הפלטפורמה, לדוגמה, HTTP ו-FTP מקבצים, DownloadManager MediaPlayer, דחיית הבקשה לבקשות של האפליקציה להשתמש בתנועה ללא טקסט.

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

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

אבל, רוב תנועה ברשת מאפליקציות מטופלת על ידי מקבצים ורכיבי רשת ברמה גבוהה יותר, שיכולים אנחנו מכבדים את הדגל הזה על ידי קריאתו ApplicationInfo.flags או NetworkSecurityPolicy.isCleartextTrafficPermitted().

הערה: WebView מכבדים את המאפיין הזה עבור לאפליקציות שמטרגטות לרמת API 26 ומעלה.

במהלך הפיתוח של האפליקציה, ניתן להשתמש ב-StrictMode כדי לזהות תנועה בטקסט ללא הצפנה מהאפליקציה. מידע נוסף זמין במאמר הבא: StrictMode.VmPolicy.Builder.detectCleartextNetwork()

המאפיין הזה נוסף ברמת API 23.

המערכת מתעלמת מהדגל הזה בגרסת Android 7.0 (רמת API 24) ואילך אם נדרש אישור של אבטחת רשת של Android ההגדרה קיימת.

android:vmSafeMode
מראה אם האפליקציה רוצה שהמכונה הווירטואלית (VM) תפעל במצב בטוח. ערך ברירת המחדל הוא "false".

המאפיין הזה נוסף ברמת API 8, שבה הערך הוא "true" השבית את המהדר (JIT) של Dalvik.

המאפיין הזה הותאם ברמת API 22, שבה הערך של "true" השבית את המהדר (compiler) ART.

הושקו ב:
רמת API 1
למידע נוסף:
<activity>
<service>
<receiver>
<provider>