- תחביר:
<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
- המאפיין הזה מציין אם מנהל ההתקנה של החבילה מחלץ ספריות מקוריות
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.
הערה: ערך הפעילות הבסיסית של המשימה חל על כל פעילויות נוספות שהופעלו במשימה. כלומר, אם פעילות השורש של של משימה ניתן לשנות את הגודל שלה, ואז המערכת מתייחסת לכל שאר הפעילויות אם ניתן לשנות את גודלם. אם לא ניתן לשנות את הגודל של פעילות השורש, לא ניתן לשנות את הגודל של הפעילויות במשימה.
- מסכים גדולים (sw >= 600dp): כל האפליקציות תומכות במצב ריבוי חלונות. התכונה מציינת
האם ניתן לשנות את גודל האפליקציה, ולא האם האפליקציה תומכת במצב ריבוי חלונות. אם המיקום
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.
החל מ-AGP 4.2.0, אפשרות ה-DSL
useLegacyPackaging
מחליפה את מאפיין המניפסטextractNativeLibs
. צריך להשתמש ב-useLegacyPackaging
בקובץbuild.gradle
של האפליקציה במקוםextractNativeLibs
בקובץ המניפסט כדי להגדיר ספריית נייטיב התנהגות דחיסה. מידע נוסף זמין בנתוני הגרסה להשתמש ב-DSL כדי לארוז ספריות מקוריות דחוסות.- הושקו ב:
- רמת API 1
- למידע נוסף:
<activity>
<service>
<receiver>
<provider>
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2024-08-20 (שעון UTC).
[]
[]
{
"last_modified": "עדכון אחרון: 2024-08-20 (שעון UTC).",
"state": ""
}