החל מ-27 במרץ 2025, מומלץ להשתמש ב-android-latest-release
במקום ב-aosp-main
כדי ליצור תרומות ל-AOSP. מידע נוסף זמין במאמר שינויים ב-AOSP.
הפעלת האפשרות לתאמה לאחור של 16 KB
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
הלחצן להפעלה/השבתה של 16KB מאפשר להפעיל מכשיר עם ליבה (kernel) של 16KB. האפשרות לתאימות לאחור של 16KB זמינה כשמכשיר פועל עם ליבה של 16KB. מנהל החבילות מפעיל אפליקציה במצב תאימות לאחור של 16KB אם יש באפליקציה קובצי ELF (עם סיומת .so
) עם יישור מקטע LOAD של 4KB, או אם בקובץ ה-APK המוצפן יש קובצי ELF לא דחוסים שמותאמים ל-ZIP בגודל 4KB. אם מנהל החבילות הפעיל מצב תאימות לאחור של 16KB לאפליקציה, תוצג באפליקציה אזהרה בפעם הראשונה שהיא מופעלת על כך שהיא פועלת במצב תאימות לאחור של 16KB.
איור 1. אזהרה במצב תאימות לגודל הדף.
מצב תאימות לאחור של 16KB מאפשר לאפליקציות מסוימות לפעול, אבל כדי לשמור על האמינות והיציבות, עדיין צריך ליישר את האפליקציות ל-16KB.
כדי להפעיל את האפשרות של תאימות לאחור בגודל 16KB, פועלים לפי ההוראות הבאות:
פועלים לפי השלבים המפורטים בקטע הפעלת המתג של 16KB כדי להפעיל את המתג של 16KB.
אפשר להפעיל את מצב תאימות לאחור של 16KB באחת מהשיטות הבאות:
מערכת Android מפעילה אפליקציות במצב תאימות לאחור במקרים שבהם יש צורך בכך. יש שני חלקים נפרדים בתאימות לאחור שאפשר להפעיל בנפרד: המאפיין bionic.linker.16kb.app_compat.enabled
קובע איך הספריות נטענות, והמאפיין pm.16kb.app_compat.disabled
קובע איך קובצי ה-APK מותקנים.
כדי לאלץ תאימות לאחור של 16 KB בכל אפליקציה במכשיר:
adb shell setprop bionic.linker.16kb.app_compat.enabled true
adb shell setprop pm.16kb.app_compat.disabled false
כדי לאלץ השבתה של תאימות לאחור ל-16 KB בכל האפליקציות במכשיר:
adb shell setprop bionic.linker.16kb.app_compat.enabled false
adb shell setprop pm.16kb.app_compat.disabled true
כדי להפעיל או להשבית את מצב תאימות לאחור באפליקציה ספציפית, מגדירים את המאפיין android:pageSizeCompat
לערך enabled
או disabled
ב-AndroidManifest.xml
שלה. כשהמאפיין הזה מוגדר, האפליקציה לא תציג אזהרות לגבי מצב תאימות לאחור כשהיא מופעלת.
בדף פרטי האפליקציה, בקטע מתקדם, מחליפים את המצב של ההגדרה הפעלת האפליקציה במצב של תאימות לגודל הדף כדי להפעיל או להשבית את מצב התאימות לאחור לגודל דף של 16KB לאפליקציה ספציפית. ההגדרה הזו מוצגת רק כשהמכשיר פועל עם גודל דף של 16KB.
איור 2. הגדרת המצב 'תאימות לגודל הדף'.
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. 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,["# Enable 16 KB backcompat option\n\n[16 KB toggle](/docs/core/architecture/16kb-page-size/16kb-developer-option)\nlets you to run a device with a 16 KB kernel. The 16 KB backcompat\noption is available when a device is running with a 16 KB kernel. The\npackage manager runs an app in 16 KB backcompat mode if the app has ELF\nfiles (with an `.so` extension) with a LOAD segment alignment of 4 KB, or\nif the zipped APK has uncompressed ELF files that are 4 KB zip aligned. If\nthe package manager has enabled 16 KB backcompat mode for an app, the app\ndisplays a warning when it's first launched saying that it's running in\n16 KB backcompat mode.\n\n**Figure 1.** Warning in page size compat mode.\n\n16 KB backcompat mode allows some apps to work,\nbut for best reliability and stability, apps should still be 16 KB aligned.\n\nTo enable the 16 KB backcompat option, follow these instructions:\n\n1. Follow the steps in [Enable 16 KB toggle](/docs/core/architecture/16kb-page-size/16kb-developer-option)\n to enable 16 KB toggle.\n\n2. Enable 16 KB backcompat mode using any of the following methods:\n\n - Android runs apps in backcompat mode where it is needed. There are two\n separate parts to backcompat that can be enabled independently: the\n `bionic.linker.16kb.app_compat.enabled` property controls how libraries\n are loaded, and the `pm.16kb.app_compat.disabled` property controls how\n APKs are installed.\n\n - To force 16 KB backcompat on for every app on the device:\n\n adb shell setprop bionic.linker.16kb.app_compat.enabled true\n adb shell setprop pm.16kb.app_compat.disabled false\n\n - To force 16 KB backcompat off for every app on the device:\n\n adb shell setprop bionic.linker.16kb.app_compat.enabled false\n adb shell setprop pm.16kb.app_compat.disabled true\n\n - Set the `android:pageSizeCompat` property to `enabled` or `disabled` to\n turn on or off backcompat mode for a specific app in its\n `AndroidManifest.xml`. When this property is set, the app won't display\n backcompat mode warnings when it launches.\n\n - On the app info page, under **Advanced** toggle the setting **Run app with\n page size compat mode** to enable or disable the 16 KB backcompat mode\n for specific app. This setting is only visible when the device is running with\n 16 KB page size.\n\n **Figure 2.** Page size compat mode setting."]]