- نحو:
<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"
غیرفعال کنید، حتی اگر برنامه شما اندروید 12 (سطح API 31) یا بالاتر را هدف قرار دهد.برای اطلاعات بیشتر، بخش پشتیبانگیری و بازیابی صفحه را ببینید که تغییرات رفتاری برنامههایی را که Android 12 (سطح API 31) یا بالاتر را هدف قرار میدهند توضیح میدهد.
-
android:allowClearUserData
آیا به برنامه اجازه داده شود که دادههای کاربر را بازنشانی کند یا خیر. این دادهها شامل پرچمهایی هستند، مانند اینکه آیا کاربر نکات ابزار مقدماتی را دیده است یا خیر، و همچنین تنظیمات و اولویتهای قابل تنظیم توسط کاربر. مقدار پیش فرض این ویژگی
"true"
است.توجه: فقط برنامه هایی که بخشی از تصویر سیستم هستند می توانند این ویژگی را به صراحت اعلام کنند. برنامه های شخص ثالث نمی توانند این ویژگی را در فایل های مانیفست خود قرار دهند.
برای اطلاعات بیشتر، به نمای کلی پشتیبانگیری از دادهها مراجعه کنید.
-
android:allowCrossUidActivitySwitchFromBelow
مشخص می کند که آیا فعالیت های زیر این یکی در کار می توانند فعالیت های دیگری را نیز شروع کنند یا کار را به پایان برسانند.
با شروع از Target SDK Level
Build.VERSION_CODES.VANILLA_ICE_CREAM
، برنامهها ممکن است از شروع فعالیتهای جدید یا اتمام کار خود مسدود شوند، مگر اینکه فعالیت اصلی چنین کاری به دلایل امنیتی متعلق به همان UID باشد.تنظیم این پرچم روی
true
به برنامه راهاندازی اجازه میدهد که اگر این فعالیت در بالا باشد، محدودیت را نادیده بگیرد. برنامههای مطابق با UID این فعالیت همیشه مستثنی هستند.برای اطلاعات بیشتر، راهاندازی فعالیت پسزمینه امن را ببینید.
-
android:allowNativeHeapPointerTagging
این که آیا برنامه ویژگی برچسبگذاری نشانگر Heap را فعال میکند یا خیر. مقدار پیش فرض این ویژگی
"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 استفاده می کند. بنابراین، این را فقط برای برنامههایی با فعالیتی که هدف
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 نسخه ۶.۰ (سطح API ۲۳) یا بالاتر نصب میشود، پشتیبانگیری خودکار انجام میدهد. در دستگاههای قدیمیتر، برنامه شما این ویژگی را نادیده میگیرد و از کلید/مقدار پشتیبانگیری میکند.مقدار پیش فرض
"false"
است. -
android:gwpAsanMode
- این ویژگی نشان میدهد که آیا باید از GWP-ASan ، یک ویژگی تخصیصدهنده حافظه بومی که به یافتن اشکالهای استفاده پس از استفاده رایگان و heap-buffer-overflow کمک میکند، استفاده کرد.
مقدار پیش فرض
"never"
است. -
android:hasCode
- این که آیا برنامه حاوی هر کد DEX باشد، یعنی کدی با استفاده از زبان برنامه نویسی Kotlin یا Java. اگر این کار را کرد
"true"
و اگر نه"false"
است. هنگامی که مقدار"false"
است، سیستم سعی نمی کند هیچ کد برنامه ای را هنگام راه اندازی اجزا بارگیری کند. مقدار پیش فرض"true"
است.اگر برنامه دارای کد بومی (C/C++) باشد، اما کد DEX ندارد، باید روی
"false"
تنظیم شود. اگر زمانی که APK حاوی کد DEX نیست، روی"true"
تنظیم شود، ممکن است برنامه بارگیری نشود.این ویژگی باید کد موجود در برنامه را بر اساس وابستگی ها در نظر بگیرد. اگر برنامه به یک AAR که از کد جاوا/کاتلین استفاده میکند یا مستقیماً روی یک JAR بستگی دارد،
app:hasCode
باید"true"
باشد یا حذف شود زیرا پیشفرض است.برای مثال، برنامه شما ممکن است از تحویل ویژگی Play پشتیبانی کند و شامل ماژولهای ویژگی باشد که هیچ فایل DEX تولید نمیکنند، که بایت کد برای پلتفرم Android بهینهسازی شده است. اگر چنین است، باید این ویژگی را در فایل مانیفست ماژول روی
"false"
تنظیم کنید تا از خطاهای زمان اجرا جلوگیری کنید. -
android:hasFragileUserData
- وقتی کاربر برنامه را حذف نصب میکند، درخواستی برای حفظ دادههای برنامه به کاربر نشان داده شود. مقدار پیش فرض
"false"
است. -
android:hardwareAccelerated
- اینکه آیا رندر سخت افزاری برای همه فعالیت ها و نمایش ها در این برنامه فعال است یا خیر. اگر فعال باشد
"true"
و در غیر این صورت"false"
است. اگرminSdkVersion
یاtargetSdkVersion
را روی"14"
یا بالاتر تنظیم کنید، مقدار پیش فرض"true"
است. در غیر این صورت،"false"
است.با شروع از Android 3.0 (سطح API 11)، یک رندر OpenGL با شتاب سخت افزاری برای برنامه ها در دسترس است تا عملکرد بسیاری از عملیات گرافیکی دوبعدی رایج را بهبود بخشد. هنگامی که رندر شتابدهنده سختافزاری فعال است، بیشتر عملیاتها در Canvas، Paint، Xfermode، ColorFilter، Shader و Camera تسریع میشوند.
این منجر به انیمیشنهای روانتر، اسکرول نرمتر و به طور کلی پاسخدهی بهتر میشود، حتی برای برنامههایی که بهصراحت از کتابخانههای OpenGL چارچوب استفاده نمیکنند.
همه عملیات OpenGL 2D تسریع نمی شوند. اگر رندر شتابدهنده سختافزاری را فعال میکنید، برنامه خود را آزمایش کنید تا بتواند بدون خطا از رندرکننده استفاده کند.
برای اطلاعات بیشتر، راهنمای شتاب سخت افزار را بخوانید.
-
android:icon
- یک نماد برای کل برنامه و نماد پیش فرض برای هر یک از اجزای برنامه. ویژگیهای
icon
منفرد را برای عناصر<activity>
،<activity-alias>
،<service>
،<receiver>
و<provider>
مشاهده کنید.این ویژگی به عنوان یک مرجع به یک منبع قابل ترسیم حاوی تصویر، مانند
"@drawable/icon"
تنظیم شده است. هیچ نماد پیش فرضی وجود ندارد. -
android:isGame
- این که آیا برنامه یک بازی است. این سیستم ممکن است برنامه هایی را که به عنوان بازی طبقه بندی می شوند را با هم گروه بندی کند یا آنها را جدا از سایر برنامه ها نمایش دهد. پیش فرض
"false"
است. -
android:isMonitoringTool
نشان می دهد که این برنامه برای نظارت بر افراد دیگر طراحی شده است.
توجه: اگر برنامهای این ویژگی را در مانیفست خود اعلام کند، توسعهدهنده باید خطمشی Stalkerware را برای انتشار برنامه در 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
که برای برنامه اجرا شده است. هنگامی که فرآیند برنامه شروع می شود، این کلاس قبل از هر یک از اجزای برنامه نمونه سازی می شود.زیر کلاس اختیاری است. اکثر برنامه ها به یکی نیاز ندارند. در غیاب زیر کلاس، اندروید از نمونه ای از کلاس
Application
پایه استفاده می کند. -
android:networkSecurityConfig
نام فایل XML که حاوی پیکربندی امنیت شبکه برنامه شما است را مشخص می کند. مقدار یک مرجع به فایل منبع XML حاوی پیکربندی است.
این ویژگی در سطح API 24 اضافه شد.
-
android:permission
- نام مجوزی که مشتریان برای تعامل با برنامه به آن نیاز دارند. این ویژگی یک راه راحت برای تنظیم مجوزی است که برای همه اجزای برنامه اعمال می شود. با تنظیم ویژگی های
permission
اجزای جداگانه بازنویسی می شود.برای اطلاعات بیشتر درباره مجوزها، به بخش مجوزها در نمای کلی مانیفست برنامه و نکات امنیتی مراجعه کنید.
-
android:persistent
- اینکه آیا برنامه همیشه در حال اجرا باقی می ماند یا خیر. اگر این کار را کرد
"true"
و اگر نه"false"
است. مقدار پیش فرض"false"
است. برنامه ها معمولاً این پرچم را تنظیم نمی کنند. حالت ماندگاری فقط برای برنامه های خاص سیستم در نظر گرفته شده است. -
android:process
- نام فرآیندی که در آن تمام اجزای برنامه اجرا می شود. هر جزء می تواند این پیش فرض را با تنظیم ویژگی
process
خود لغو کند.بهطور پیشفرض، آندروید فرآیندی را برای یک برنامه زمانی ایجاد میکند که اولین مؤلفه آن باید اجرا شود. سپس همه اجزا در آن فرآیند اجرا می شوند. نام فرآیند پیش فرض با نام بسته تنظیم شده توسط عنصر
<manifest>
مطابقت دارد.با تنظیم این ویژگی روی نام فرآیندی که با برنامه دیگری به اشتراک گذاشته شده است، میتوانید ترتیبی دهید که اجزای هر دو برنامه در یک فرآیند اجرا شوند، اما تنها در صورتی که دو برنامه یک شناسه کاربری مشترک داشته باشند و با یک گواهی امضا شده باشند.
اگر نام تخصیص داده شده به این ویژگی با یک دونقطه (
:
) شروع شود، یک فرآیند جدید، خصوصی برای برنامه، در صورت نیاز ایجاد می شود. اگر نام فرآیند با یک کاراکتر کوچک شروع شود، یک فرآیند جهانی از آن نام ایجاد می شود. یک فرآیند جهانی را می توان با برنامه های کاربردی دیگر به اشتراک گذاشت و مصرف منابع را کاهش داد. -
android:restoreAnyVersion
- نشان می دهد که برنامه آماده است تا مجموعه داده های پشتیبان گیری شده را بازیابی کند، حتی اگر نسخه پشتیبان توسط یک نسخه جدیدتر از برنامه نصب شده در دستگاه ذخیره شده باشد. تنظیم این ویژگی روی
"true"
به مدیر پشتیبانگیری اجازه میدهد حتی زمانی که عدم تطابق نسخه نشان میدهد که دادهها ناسازگار هستند، اقدام به بازیابی کند. با احتیاط استفاده کنید!مقدار پیش فرض این ویژگی
"false"
است. -
android:requestLegacyExternalStorage
اینکه آیا برنامه میخواهد از فضای ذخیرهسازی دامنهدار انصراف دهد یا خیر.
توجه: بسته به تغییرات مربوط به خطمشی یا سازگاری برنامه، سیستم ممکن است این درخواست انصراف را رعایت نکند.
-
android:requiredAccountType
- نوع حساب مورد نیاز برنامه برای عملکرد را مشخص می کند. اگر برنامه شما به یک
Account
نیاز دارد، مقدار این ویژگی باید مطابق با نوع احراز هویت حساب مورد استفاده توسط برنامه شما باشد، همانطور که توسطAuthenticatorDescription
تعریف شده است، مانند"com.google"
.مقدار پیش فرض null است و نشان می دهد که برنامه می تواند بدون هیچ حساب کاربری کار کند.
از آنجا که نمایههای محدود شده نمیتوانند حساب اضافه کنند، تعیین این ویژگی باعث میشود برنامه شما از نمایهای محدود در دسترس نباشد، مگر اینکه
android:restrictedAccountType
با همان مقدار اعلام کنید.احتیاط: اگر دادههای حساب ممکن است اطلاعات شناسایی شخصی را نشان دهند، مهم است که این ویژگی را اعلام کرده و
android:restrictedAccountType
خالی بگذارید تا نمایههای محدود شده نتوانند از برنامه شما برای دسترسی به اطلاعات شخصی که متعلق به کاربر مالک است استفاده کنند.این ویژگی در سطح 18 API اضافه شده است.
-
android:resizeableActivity
مشخص می کند که آیا برنامه از حالت چند پنجره ای پشتیبانی می کند یا خیر. می توانید این ویژگی را در عنصر
<activity>
یا<application>
تنظیم کنید.اگر این ویژگی را روی
"true"
تنظیم کنید، کاربر می تواند فعالیت را در حالت های تقسیم صفحه و حالت آزاد راه اندازی کند. اگر ویژگی را روی"false"
تنظیم کنید، برنامه را نمی توان برای یک محیط چند پنجره ای آزمایش یا بهینه کرد. سیستم همچنان میتواند فعالیت را در حالت چند پنجرهای با حالت سازگاری اعمال شده قرار دهد.تنظیم این ویژگی روی
"true"
تضمین نمی کند که هیچ برنامه دیگری در حالت چند پنجره ای روی صفحه قابل مشاهده نباشد، مانند تصویر در تصویر، یا روی نمایشگرهای دیگر. بنابراین، تنظیم این پرچم به این معنی نیست که برنامه شما به منابع انحصاری دسترسی دارد.برای برنامههایی که سطح API 24 یا بالاتر را هدف قرار میدهند، پیشفرض
"true"
است.اگر برنامه شما سطح API 31 یا بالاتر را هدف قرار میدهد، این ویژگی در صفحههای کوچک و بزرگ متفاوت عمل میکند:
- صفحه نمایش بزرگ (sw >= 600dp): همه برنامه ها از حالت چند پنجره ای پشتیبانی می کنند. این ویژگی نشان میدهد که آیا میتوان اندازه برنامه را تغییر داد، نه اینکه آیا برنامه از حالت چند پنجرهای پشتیبانی میکند یا خیر. اگر
resizeableActivity="false"
، برنامه در صورت لزوم در حالت سازگاری قرار می گیرد تا با ابعاد نمایش مطابقت داشته باشد. - نمایشگرهای کوچک (sw < 600dp): اگر
resizeableActivity="true"
و حداقل عرض و حداقل ارتفاع فعالیت اصلی در شرایط چند پنجره ای باشد، برنامه از حالت چند پنجره ای پشتیبانی می کند. اگرresizeableActivity="false"
، برنامه بدون در نظر گرفتن حداقل عرض و ارتفاع فعالیت، از حالت چند پنجره ای پشتیبانی نمی کند.
توجه: سازندگان دستگاه می توانند رفتار سطح 31 API را لغو کنند.
این ویژگی در سطح API 24 اضافه شد.
توجه: مقدار فعالیت ریشه یک کار برای تمام فعالیت های اضافی راه اندازی شده در کار اعمال می شود. به این معنا که اگر فعالیت ریشه یک کار قابل تغییر اندازه باشد، آنگاه سیستم تمام فعالیتهای دیگر در کار را بهعنوان قابل تغییر اندازه در نظر میگیرد. اگر اکتیویتی ریشه قابل تغییر اندازه نباشد، سایر فعالیتهای موجود در کار قابل تغییر اندازه نیستند.
- صفحه نمایش بزرگ (sw >= 600dp): همه برنامه ها از حالت چند پنجره ای پشتیبانی می کنند. این ویژگی نشان میدهد که آیا میتوان اندازه برنامه را تغییر داد، نه اینکه آیا برنامه از حالت چند پنجرهای پشتیبانی میکند یا خیر. اگر
-
android:restrictedAccountType
- نوع حساب مورد نیاز این برنامه را مشخص می کند و نشان می دهد که نمایه های محدود شده می توانند به چنین حساب هایی که متعلق به کاربر مالک هستند دسترسی داشته باشند. اگر برنامه شما به یک
Account
نیاز دارد و نمایههای محدود شده میتوانند به حسابهای کاربر اصلی دسترسی داشته باشند، مقدار این ویژگی باید مطابق با نوع احراز هویت حساب مورد استفاده توسط برنامه شما باشد، همانطور که توسطAuthenticatorDescription
، مانند"com.google"
تعریف شده است.مقدار پیش فرض null است و نشان می دهد که برنامه می تواند بدون هیچ حساب کاربری کار کند.
احتیاط: تعیین این ویژگی به نمایههای محدود شده اجازه میدهد از برنامه شما با حسابهایی استفاده کنند که متعلق به کاربر مالک است، که ممکن است اطلاعات قابل شناسایی شخصی را فاش کند. اگر حساب ممکن است جزئیات شخصی را فاش کند، از این ویژگی استفاده نکنید . در عوض، ویژگی
android:requiredAccountType
را اعلام کنید تا برنامه شما برای پروفایل های محدود در دسترس نباشد.این ویژگی در سطح 18 API اضافه شده است.
-
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 منتشر کنید.وقتی روی Run کلیک کنید Android Studio به طور خودکار این ویژگی را اضافه می کند .
-
android:theme
- یک مرجع به یک منبع سبک که یک تم پیشفرض را برای همه فعالیتهای برنامه تعریف میکند. فعالیتهای فردی میتوانند با تنظیم ویژگیهای
theme
خود، پیشفرض را لغو کنند. برای اطلاعات بیشتر، به سبکها و تمها مراجعه کنید. -
android:uiOptions
- گزینه های اضافی برای رابط کاربری یک فعالیت. باید یکی از مقادیر زیر باشد:
ارزش توضیحات "none"
بدون گزینه UI اضافی. این پیش فرض است. "splitActionBarWhenNarrow"
هنگامی که برای فضای افقی محدود می شود، مانند زمانی که در حالت عمودی روی گوشی قرار دارید، نواری را در پایین صفحه برای نمایش موارد اقدام در نوار برنامه اضافه می کند، که به عنوان نوار اقدام نیز شناخته می شود. بهجای اینکه تعداد کمی از موارد اقدام در نوار برنامه در بالای صفحه ظاهر شوند، نوار برنامه به بخش پیمایش بالا و نوار پایین برای موارد اقدام تقسیم میشود. این بدان معناست که فضای مناسبی برای آیتم های اکشن و برای ناوبری و عناصر عنوان در بالا در دسترس است. موارد منو در دو نوار تقسیم نمی شوند. آنها همیشه با هم ظاهر می شوند. برای اطلاعات بیشتر درباره نوار برنامه، به افزودن نوار برنامه مراجعه کنید.
این ویژگی در سطح API 14 اضافه شد.
-
android:usesCleartextTraffic
- نشان می دهد که آیا برنامه قصد دارد از ترافیک شبکه متن شفاف مانند HTTP متن شفاف استفاده کند. مقدار پیشفرض برای برنامههایی که سطح API 27 یا پایینتر را هدف قرار میدهند،
"true"
است. برنامه هایی که سطح API 28 یا بالاتر را به طور پیش فرض روی"false"
هدف قرار می دهند.هنگامی که ویژگی روی
"false"
تنظیم می شود، اجزای پلتفرم، به عنوان مثال، پشته های HTTP و FTP،DownloadManager
وMediaPlayer
، درخواست های برنامه برای استفاده از ترافیک متن شفاف را رد می کنند.کتابخانه های شخص ثالث به شدت تشویق می شوند که این تنظیم را نیز رعایت کنند. دلیل اصلی اجتناب از ترافیک متن شفاف، عدم محرمانه بودن، اصالت و حفاظت در برابر دستکاری است. یک مهاجم شبکه می تواند داده های ارسال شده را استراق سمع کند و همچنین بدون شناسایی آن ها را تغییر دهد.
این پرچم بر اساس بهترین تلاش مورد تقدیر قرار گرفته است، زیرا با توجه به سطح دسترسی ارائه شده به آنها، جلوگیری از همه ترافیک متن واضح از برنامه های Android غیرممکن است. به عنوان مثال، هیچ انتظاری وجود ندارد که
Socket
API به این پرچم احترام بگذارد، زیرا نمی تواند تعیین کند که آیا ترافیک آن در متن شفاف است یا خیر.با این حال، بیشتر ترافیک شبکه از برنامهها توسط پشتهها و مؤلفههای شبکه سطح بالاتر مدیریت میشود، که میتوانند این پرچم را با خواندن آن از
ApplicationInfo.flags
یاNetworkSecurityPolicy.isCleartextTrafficPermitted()
احترام کنند.توجه:
WebView
این ویژگی را برای برنامه هایی که سطح API 26 و بالاتر را هدف قرار می دهند، ارج نهاده است.در طول توسعه برنامه، StrictMode می تواند برای شناسایی ترافیک متن واضح از برنامه استفاده شود. برای اطلاعات بیشتر،
StrictMode.VmPolicy.Builder.detectCleartextNetwork()
را ببینید.این ویژگی در سطح 23 API اضافه شده است.
در صورت وجود پیکربندی امنیت شبکه Android، این پرچم در Android 7.0 (سطح API 24) و بالاتر نادیده گرفته میشود.
-
android:vmSafeMode
- نشان می دهد که آیا برنامه می خواهد ماشین مجازی (VM) در حالت ایمن کار کند یا خیر. مقدار پیش فرض
"false"
است.این ویژگی در سطح 8 API اضافه شد، جایی که مقدار
"true"
کامپایلر Dalvik just-in-time (JIT) را غیرفعال کرد.این ویژگی در سطح 22 API تطبیق داده شد، جایی که مقدار
"true"
کامپایلر ART پیش از زمان (AOT) را غیرفعال کرد.
با شروع AGP 4.2.0، گزینه DSL
useLegacyPackaging
جایگزین ویژگی مانیفستextractNativeLibs
می شود. ازuseLegacyPackaging
در فایلbuild.gradle
برنامه خود به جایextractNativeLibs
در فایل مانیفست برای پیکربندی رفتار فشرده سازی کتابخانه بومی استفاده کنید. برای اطلاعات بیشتر، به یادداشت انتشار مراجعه کنید از DSL برای بسته بندی کتابخانه های بومی فشرده استفاده کنید .-
- معرفی شده در:
- API سطح 1
- همچنین ببینید:
-
<activity>
<service>
<receiver>
<provider>
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2024-11-13 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2024-11-13 بهوقت ساعت هماهنگ جهانی."],[],[]]