<uses-permission>
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
הערה: במקרים מסוימים, ההרשאות שאתם מבקשים
עד <uses-permission>
יכולים להשפיע על האופן שבו Google Play מסננת
תרגום מכונה. אם מבקשים הרשאה שקשורה לחומרה, כמו
CAMERA
, מערכת Google Play מניחה
דורשת את תכונת החומרה הבסיסית ומסננת את האפליקציה
ממכשירים שלא מציעים אותם.
כדי לשלוט בסינון, תמיד צריך להצהיר במפורש
תכונות חומרה ברכיבי <uses-feature>
, במקום
מסתמכים על Google Play כדי "לגלות" הדרישות במסגרת
רכיבי <uses-permission>
. לאחר מכן, אם רוצים להשבית
לסינון של תכונה מסוימת, אפשר להוסיף
android:required="false"
אל
<uses-feature>
.
לרשימה של הרשאות שמרמזות
לתכונות חומרה, אפשר לעיין בתיעוד של
רכיב <uses-feature>
.
- תחביר:
<uses-permission android:name="string"
android:maxSdkVersion="integer" />
- בתוך:
<manifest>
- תיאור:
- ההגדרה קובעת הרשאת מערכת שהמשתמש צריך להעניק בשבילה
כדי שהאפליקציה תפעל בצורה תקינה. המשתמש מעניק הרשאות כאשר
התקנות של אפליקציות במכשירים עם Android 5.1 ומטה, או בזמן שהאפליקציה פועלת, במכשירים עם Android 6.0 ומעלה.
למידע נוסף על הרשאות, אפשר לעיין ב
הרשאות
בסקירה הכללית של קובץ המניפסט של האפליקציה.
מדריך בנושא הרשאות ב-Android.
רשימה של הרשאות שהוגדרו על ידי פלטפורמת הבסיס זמינה
android.Manifest.permission
- :
android:name
- שם ההרשאה. זו יכולה להיות הרשאה שמוגדרת על ידי
אפליקציה עם
<permission>
הרשאה שהוגדרה על ידי אפליקציה אחרת, או
הרשאות מערכת רגילות, כמו
"android.permission.CAMERA"
או "android.permission.READ_CONTACTS"
. כפי שהדוגמאות האלה מראות,
בדרך כלל שם הרשאה כולל את שם החבילה כקידומת.
android:maxSdkVersion
- רמת ה-API הגבוהה ביותר שבה ההרשאה הזו ניתנה לאפליקציה שלך.
הגדרת המאפיין הזה שימושית אם אין יותר צורך בהרשאה שהאפליקציה דורשת
ברמת API מסוימת.
לדוגמה, החל מ-Android 4.4 (רמת API 19), אין יותר צורך בו עבור האפליקציה
כדי לבקש WRITE_EXTERNAL_STORAGE
הרשאה לכתוב בספריות הספציפיות לאפליקציות שלו באחסון חיצוני,
סופק על ידי getExternalFilesDir()
.
אבל, לפעמים
ההרשאה נדרשת עבור API ברמה 18 ומטה. אז אתם יכולים להצהיר
נדרשת הרשאה רק עד רמת API 18, עם הצהרה כמו:
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="18" />
בדרך הזו, החל מרמת API 19, המערכת לא מעניקה יותר לאפליקציה את
ההרשאה WRITE_EXTERNAL_STORAGE
.
נוסף ברמת API 19.
- הושקו ב:
- רמת API 1
- למידע נוסף:
-
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-07-27 (שעון UTC).
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["חסרים לי מידע או פרטים","missingTheInformationINeed","thumb-down"],["התוכן מורכב מדי או עם יותר מדי שלבים","tooComplicatedTooManySteps","thumb-down"],["התוכן לא עדכני","outOfDate","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["בעיה בדוגמאות/בקוד","samplesCodeIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2025-07-27 (שעון UTC)."],[],[],null,["# <uses-permission\u003e\n\n**Note:** In some cases, the permissions that you request\nthrough `\u003cuses-permission\u003e` can affect how Google Play filters your\napplication. If you request a hardware-related permission, such as\n`CAMERA`, Google Play assumes that your\napplication requires the underlying hardware feature and filters the application\nfrom devices that don't offer it.\n\nTo control filtering, always explicitly declare\nhardware features in `\u003cuses-feature\u003e` elements, rather than\nrelying on Google Play to \"discover\" the requirements in\n`\u003cuses-permission\u003e` elements. Then, if you want to disable\nfiltering for a particular feature, you can add a\n`android:required=\"false\"` attribute to the\n`\u003cuses-feature\u003e` declaration.\n\nFor a list of permissions that imply\nhardware features, see the documentation for the [`\u003cuses-feature\u003e`](/guide/topics/manifest/uses-feature-element#permissions-features) element.\n\nsyntax:\n:\n\n ```xml\n \u003cuses-permission android:name=\"string\"\n android:maxSdkVersion=\"integer\" /\u003e\n ```\n\ncontained in:\n: [\u003cmanifest\u003e](/guide/topics/manifest/manifest-element)\n\ndescription:\n\n: Specifies a system permission that the user must grant for the app to operate correctly. The user grants permissions when the application installs, on devices running Android 5.1 and lower, or while the app runs, on devices running Android 6.0 and higher.\u003cbr /\u003e\n\n\n For more information on permissions, see the\n [Permissions](/guide/topics/manifest/manifest-intro#perms)\n section in the app manifest overview and the\n [Permissions on Android](/guide/topics/permissions) guide.\n A list of permissions defined by the base platform is at\n [android.Manifest.permission](/reference/android/Manifest.permission).\n\nattributes:\n:\n\n `android:name`\n : The name of the permission. It can be a permission defined by the\n application with the [\u003cpermission\u003e](/guide/topics/manifest/permission-element)\n element, a permission defined by another application, or one of the\n standard system permissions, such as\n [\"android.permission.CAMERA\"](/reference/android/Manifest.permission#CAMERA)\n or [\"android.permission.READ_CONTACTS\"](/reference/android/Manifest.permission#READ_CONTACTS). As these examples show,\n a permission name typically includes the package name as a prefix.\n\n `android:maxSdkVersion`\n\n : The highest API level at which this permission is granted to your app. Setting this attribute is useful if the permission your app requires is no longer needed beginning at a certain API level.\u003cbr /\u003e\n\n For example, beginning with Android 4.4 (API level 19) it's no longer necessary for your app\n to request the [WRITE_EXTERNAL_STORAGE](/reference/android/Manifest.permission#WRITE_EXTERNAL_STORAGE)\n permission to write to its own application-specific directories on external storage, which are\n provided by [getExternalFilesDir()](/reference/android/content/Context#getExternalFilesDir(java.lang.String)).\n\n However,\n the permission *is required* for API level 18 and lower. So you can declare that this\n permission is needed only up to API level 18 with a declaration like the following: \n\n ```xml\n \u003cuses-permission\n android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\"\n android:maxSdkVersion=\"18\" /\u003e\n ```\n\n This way, beginning with API level 19, the system no longer grants your app the\n `WRITE_EXTERNAL_STORAGE` permission.\n\n Added in API level 19.\n\nintroduced in:\n: API level 1\n\nsee also:\n:\n - [\u003cpermission\u003e](/guide/topics/manifest/permission-element)\n - [`\u003cuses-permission-sdk-23\u003e`](/guide/topics/manifest/uses-permission-sdk-23-element)\n - [\u003cuses-feature\u003e](/guide/topics/manifest/uses-feature-element)"]]