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

למה כדאי להשתמש ב-Android Jetpack?

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

* ספריות פופולריות שנמצאות בשימוש לעתים קרובות מופיעות ראשונות

activity *גישה לממשקי API שאפשר להרכיב, שמבוססים על Activity.
appcompat *מאפשרת גישה לממשקי API חדשים בגרסאות ישנות יותר של API בפלטפורמה (רבים מהם משתמשים ב-Material Design).
appsearch *יצירת יכולות חיפוש מותאמות אישית בתוך האפליקציה עבור המשתמשים.
מצלמה *פיתוח אפליקציות מצלמה לנייד.
compose *הגדרת ממשק המשתמש באופן פרוגרמטי באמצעות פונקציות שאפשר להרכיב מהן ממשק שמתאר את הצורה שלו ואת התלות שלו בנתונים.
databinding *אפשר לקשר רכיבי ממשק משתמש בפריסות למקורות נתונים באפליקציה באמצעות פורמט דקלרטיבי.
fragment *פילוח האפליקציה למספר מסכים עצמאיים שמתארחים בתוך Activity.
hilt *הרחבת הפונקציונליות של Dagger Hilt כדי לאפשר הזרקת תלות של מחלקות מסוימות מהספריות של androidx.
lifecycle *ליצור רכיבים שמודעים למחזור החיים ויכולים לשנות את ההתנהגות שלהם בהתאם למצב הנוכחי של מחזור החיים של פעילות או של קטע.
רכיבי Material Design * רכיבי ממשק משתמש מודולריים וניתנים להתאמה אישית של Material Design ל-Android.
ניווט *ליצור ולבנות את ממשק המשתמש באפליקציה, לטפל בקישורי עומק ולנווט בין מסכים.
paging *טוענים נתונים בדפים ומציגים אותם ב-RecyclerView.
חדר *יצירה, אחסון וניהול של נתונים קבועים שמגובים על ידי מסד נתונים של SQLite.
test *בדיקה ב-Android.
עבודה *לתזמן ולהריץ משימות ברקע שניתנות לדחייה ומבוססות על אילוצים.
adsקבלת מזהה פרסום עם או בלי Google Play Services.
annotationחשיפת מטא נתונים שעוזרים לכלים ולמפתחים אחרים להבין את הקוד של האפליקציה.
appfunctionsTODO
arch.coreקובץ עזר לתלות בארכיטקטורה אחרת, כולל כללי בדיקה של JUnit שאפשר להשתמש בהם עם LiveData.
asynclayoutinflaterכדי למנוע קפיצות בממשק המשתמש, כדאי להגדיר את הפריסות כך שיתרחבו באופן אסינכרוני.
autofillשיפור הדיוק של המילוי האוטומטי באמצעות הרחבת ההצעות.
benchmarkמדידה מדויקת של ביצועי הקוד ב-Android Studio.
ביומטריאימות באמצעות נתונים ביומטריים או פרטי הכניסה של המכשיר, וביצוע פעולות קריפטוגרפיות.
bluetoothשימוש בתכונות ה-Bluetooth של פלטפורמת Android עם ממשקי API שתואמים לאחור.
דפדפןהצגת דפי אינטרנט בדפדפן ברירת המחדל של המשתמש.
camera.featurecombinationqueryTODO
camera.media3TODO
camera.viewfinderStandalone Composable and View based Viewfinder for Camera"
car-appבניית אפליקציות מבוססות-תבניות ל-Android Auto ול-Android Automotive OS.
cardviewהטמעת דפוס כרטיס של Material Design עם פינות מעוגלות וצללים.
אוסףהפחתת ההשפעה על הזיכרון של אוספים קיימים וחדשים שהם קטנים.
compose.animationליצור אנימציות באפליקציות Jetpack Compose כדי לשפר את חוויית המשתמש.
compose.compilerשינוי פונקציות @Composable והפעלת אופטימיזציות באמצעות פלאגין של מהדר Kotlin.
compose.foundationכתיבת אפליקציות ב-Jetpack Compose באמצעות אבני בניין מוכנות לשימוש והרחבת הבסיס כדי ליצור רכיבים משלכם למערכת העיצוב.
compose.materialאפשר ליצור ממשקי משתמש של Jetpack פיתוח נייטיב באמצעות רכיבי Material Design מוכנים לשימוש. זוהי נקודת הכניסה ברמה הגבוהה ביותר של Compose, שנועדה לספק רכיבים שתואמים לאלה שמתוארים בכתובת www.material.io.
compose.material3אפשר ליצור ממשקי משתמש ב-Jetpack Compose באמצעות רכיבי Material Design 3, הדור הבא של Material Design. ‫Material 3 כולל רכיבים וערכות נושא מעודכנים ותכונות התאמה אישית של Material You, כמו צבעים דינמיים. הוא מעוצב כך שיהיה עקבי עם הסגנון החזותי החדש של Android 12 וממשק המשתמש של המערכת.
compose.material3.adaptiveאפשר להשתמש בספריית ההתאמה של Material 3 כדי ליצור ממשקי משתמש דינמיים שמותאמים אוטומטית לתצורות הנוכחיות של החלון, כמו גדלים של חלונות או מצבי מכשיר. הספרייה מספקת הטמעות ברירת מחדל של scaffold וגם קומפוזיציות של אבני בניין שנדרשות ליצירת חוויות מותאמות אישית.
compose.runtimeאבני הבניין הבסיסיות של מודל התכנות וניהול המצב של Compose, וזמן הריצה המרכזי של הפלאגין של מהדר Compose לטירגוט.
compose.uiרכיבים בסיסיים בממשק המשתמש של Compose שנדרשים כדי ליצור אינטראקציה עם המכשיר, כולל פריסה, ציור וקלט.
בו-זמניתלהעביר משימות מהשרשור הראשי באמצעות קורוטינות ולנצל את ListenableFuture.
constraintlayoutאפשר למקם ולשנות את הגודל של הווידג'טים בצורה גמישה באמצעות מיקום יחסי.
contentpagerטעינה ודפדוף בנתוני ContentProvider בשרשור ברקע.
coordinatorlayoutמיקום ווידג'טים של אפליקציות ברמה העליונה, כמו AppBarLayout ו-FloatingActionButton.
coreלטרגט את התכונות והממשקי API העדכניים ביותר של הפלטפורמה, וגם לתמוך במכשירים ישנים יותר.
core.uwbהטמעת UWB (Ultra Wideband) במכשירים נתמכים.
credentials הספרייה הזו מספקת גישה מאוחדת לפרטי הכניסה של המשתמש. הנתונים האלה יכולים לכלול סיסמאות, מפתחות גישה ופרטי כניסה מאוחדים. צריך להשתמש בספרייה הזו כדי לספק חוויית כניסה חלקה ומאובטחת.
credentials.providereventsTODO
credentials.registryכדי לפתור את הבעיות האלה, אנחנו מוסיפים מנגנון רישום חדש שמאפשר לאפליקציה לספק אישורים דיגיטליים באופן ששומר על הפרטיות. באופן כללי, אפליקציית הספק תרשום מראש את כל פרטי הכניסה הדיגיטליים הפוטנציאליים שלה במרכז פרטי הכניסה. כשמרכז פרטי הכניסה יקבל בקשה מאפליקציה לפרטי כניסה דיגיטליים ספציפיים, הוא יפעיל את ההתאמה של פרטי הכניסה ואת ממשק המשתמש לבחירת המשתמש בארגז חול.
cursoradapterחשיפת נתוני Cursor לווידג'ט ListView.
customviewהטמעה של תצוגות מותאמות אישית.
datastoreאחסון נתונים באופן אסינכרוני, עקבי וטרנזקציונלי, כדי להתגבר על חלק מהחסרונות של SharedPreferences
documentfileלהציג מסמך קובץ.
draganddropאפשר לקבל נתונים בשיטת גרור ושחרר מאפליקציה אחרת או בתוך אפליקציה, ולהציג באופן עקבי את אזור היעד לשחרור.
drawerlayoutהטמעה של ווידג'ט מגירה של Material Design.
dynamicanimationיצירת אנימציות חלקות באמצעות API של אנימציה שמבוסס על פיזיקה.
אמוג'יהצגת אמוג'י במכשירים נוכחיים וישנים.
emoji2הצגת אמוג'י במכשירים נוכחיים וישנים.
enterpriseליצור אפליקציות שמוכנות לשימוש בארגונים.
exifinterfaceקריאה וכתיבה של תגי EXIF בקובץ תמונה.
משחקיםאפשר להשתמש ב-Android Game SDK באופן מקורי באפליקציה כדי לבצע משימות מורכבות במשחקים, כמו Frame Pacing.
glanceאפשר ליצור פריסות למשטחים מרוחקים באמצעות API בסגנון Jetpack Compose.
graphicsשימוש ביכולות גרפיות בכמה גרסאות של פלטפורמת Android
gridlayoutהטמעה של פריסת משבצות.
healthיצירת אפליקציות בתחום הבריאות שמניבות ביצועים טובים, בלי קשר לפלטפורמה.
health.connectמאפשרת למפתחים לקרוא או לכתוב את הרשומות של המשתמשים בנושא בריאות וכושר.
heifwriterקידוד תמונה או אוסף תמונות בפורמט HEIF באמצעות הקודקים הזמינים במכשיר Android.
inkהשראה לאפליקציות עט מהטובות ביותר. להקטין את המחסום בפני מפתחים כדי ליצור חוויות דיו יפות וביצועים גבוהים.
inputהפחתת זמן האחזור של אינטראקציות עם קלט על ידי חיזוי של MotionEvents עתידיים
interpolatorשימוש ב-interpolators של אנימציה בפלטפורמות ישנות יותר.
javascriptengineהפעלת האפשרות לאפליקציית Android להעריך JavaScript.
jetifierכלי עצמאי שמעביר את התלויות של ספרייה בספריית התמיכה שהוצאה משימוש לתלויות מקבילות ב-AndroidX.
leanbackאפשר להשתמש ב-Compose לטלוויזיה במקום בארטיפקט הזה.
legacyהפריט הזה והכיתות שלו הוצאו משימוש. החל מ-Android 8, הגבלות על בדיקות ברקע הופכות את המחלקה הזו ללא שימושית.
lintבדיקות Lint לאימות השימוש ב-Gradle APIs
loaderטעינת נתונים לממשק המשתמש שלא מושפעים משינויים בהגדרות.
localbroadcastmanagerהפריט הזה והכיתות שלו הוצאו משימוש. במקום זאת, אפשר להשתמש ב-LiveData או בזרמים ריאקטיביים.
mediaשיתוף תכני מדיה ואמצעי בקרה עם אפליקציות אחרות. הוחלפה על ידי Media3.
media3 *ספריות תמיכה לתרחישי שימוש במדיה.
mediarouterהפעלת הצגה והפעלה של מדיה במכשירי מקלט מרוחקים באמצעות ממשק משתמש משותף.
multidexפריסת אפליקציות עם כמה קובצי dex במכשירים עם גרסה קודמת ל-Android 5.
מדדיםמעקב אחרי מדדים שונים של זמן ריצה באפליקציה ודיווח עליהם
navigation3 ‫Navigation 3 היא ספריית ניווט חדשה שנועדה לפעול עם Compose.
navigationevent ספריית Navigation Event מספקת API שמתמקד ב-KMP לטיפול בחזרה למערכת, וגם ב[חיזוי של תנועת החזרה](/guide/navigation/custom-back/predictive-back-gesture).
paletteלחלץ לוחות צבעים מייצגים מתמונות.
pdfספרייה להוספת יכולות צפייה בקובצי PDF בתוך אפליקציות.
percentlayoutהפריט הזה והכיתות שלו הוצאו משימוש. במקום זאת, אפשר להשתמש ב-ConstraintLayout ובפריסות משויכות.
performanceמספק אנוטציות של מקורות לאופטימיזציה של הביצועים.
photopickerהספרייה הזו מספקת שילוב של Compose ו-Android Views עבור הכלי המוטמע לבחירת תמונות.
preferenceליצור מסכי הגדרות אינטראקטיביים בלי צורך באינטראקציה עם אחסון המכשיר או בניהול ממשק המשתמש.
printלהדפיס תמונות, מסמכים וגרפיקה ותמונות אחרות מהאפליקציה.
privacysandbox.activityTODO
privacysandbox.adsהספרייה הזו מאפשרת שילוב עם ממשקי API לשמירה על הפרטיות, שהם חלק מארגז החול לפרטיות ב-Android.
privacysandbox.pluginsפלאגין Android Privacy Sandbox Sdk Library Gradle
privacysandbox.sdkruntimeהספרייה הזו מספקת רכיבים לצרכנים שמודעים ל-SdkRuntime
privacysandbox.toolsספרייה לשימוש בפונקציונליות של ארגז החול לפרטיות ב-Android
privacysandbox.uiTODO
profileinstallerמאפשר לספריות לאכלס מראש עקבות של קומפילציה כדי ש-ART יוכל לקרוא אותן.
המלצהקידום תוכן במסך הבית של Android TV Launcher.
recyclerviewלהציג קבוצות גדולות של נתונים בממשק המשתמש תוך צמצום השימוש בזיכרון.
remotecallbackיוצרים wrapper שמקל על מפתחים לספק PendingIntent.
resourceinspectionהצגת המאפיינים של תצוגות בהתאמה אישית בכלי לבדיקת פריסות בשידור חי ב-Android Studio.
savedstateכתיבת רכיבים שניתנים להוספה, ששומרים את מצב ממשק המשתמש כשמפסיקים תהליך ומשחזרים אותו כשמפעילים מחדש את התהליך.
אבטחהניהול מאובטח של מפתחות והצפנה של קבצים והעדפות משותפות.
sharetargetלספק תאימות לאחור לשימוש בקיצורי דרך כיעדים לשיתוף ישיר.
sliceהצגת רכיבים בממשק משתמש מבוסס-תבנית מחוץ לאפליקציה.
slidingpanelayoutהטמעה של תבנית ממשק משתמש של חלונית הזזה.
startupהטמעה של דרך פשוטה ויעילה לאתחול רכיבים בזמן הפעלת האפליקציה.
sqliteעבודה עם מסדי נתונים מקומיים של SQLite. אם אפשר, משתמשים ב-Room במקום זאת.
swiperefreshlayoutהטמעה של תבנית ממשק המשתמש 'החלקה לרענון'.
test.uiautomatorFramework for cross app functional UI testing
textclassifierמזהה שיחות, קישורים, בחירות ומבנים דומים אחרים בטקסט.
tracingכתיבת אירועי מעקב למאגר המעקב של המערכת.
transitionהנפשת תנועה בממשק המשתמש עם פריסות התחלה וסיום.
tvמספק למפתחים פונקציות של Compose ו-Material Design כדי לכתוב אפליקציות לטלוויזיה
tvproviderלספק ערוצים ל-Android TV.
xr.arcoreהיכולות של תפיסה מאפשרות להציג תוכן דיגיטלי בעולם האמיתי.
xr.composeליצור באופן הצהרתי פריסות של ממשקי משתמש מרחביים שמנצלות את היכולות המרחביות של Android XR.
xr.compose.material3פיתוח באמצעות רכיבים ופריסות של Material שמותאמים ל-XR
xr.runtimeאתם יכולים להתחיל סשן מותאם אישית של AR או 3D עם זמן הריצה המקורי שלנו.
xr.scenecoreיצירה של גרף סצנה ב-Android XR עם תוכן תלת-ממדי ושינוי שלו.
vectordrawableעיבוד גרפיקה וקטורית.
versionedparcelableמספק פורמט סריאליזציה בינארי יציב וקומפקטי שאפשר להעביר בין תהליכים או לשמור בצורה בטוחה.
viewpagerהצגת תצוגות או מקטעים בפורמט שאפשר להחליק בו. אם אפשר, כדאי להשתמש ב-ViewPager2.
viewpager2הצגת תצוגות או מקטעים בפורמט שאפשר להחליק בו.
wearיצירת אפליקציות לשעונים חכמים עם Wear OS by Google.
wear.composeאתם יכולים לכתוב אפליקציות Jetpack Compose למכשירי Wear OS על ידי הוספת פונקציונליות לתמיכה בגדלים שונים של מכשירים ובמחוות ניווט.
wear.protolayoutהספרייה הזו מאפשרת להגדיר קבוצה של פריסות ממשק משתמש וביטויים שאינם ממשק משתמש, שיוצגו או יוערכו בממשקים מרוחקים.
wear.tilesיצירת אפליקציות לשעונים חכמים עם Wear OS by Google.
wear.watchfaceיצירת אפליקציות לשעונים חכמים עם Wear OS by Google.
wear.watchfacepushהתכונה Watch Face Push מאפשרת לאפליקציית Wear OS להתקין תצוגת שעון בשעון באופן פרוגרמטי.
webkitפועלות עם ממשקי WebView API מודרניים ב-Android מגרסה 5 ואילך.
windowעוזרת לתמוך בגורמי צורה שונים של מכשירים, כמו מכשירים מתקפלים.
window.extensions.coreממשקי ה-API המרכזיים של תוספי הספרייה של Window Manager

איך משתמשים ב-Jetpack

לומדים על ספריות Jetpack החיוניות בקורס 'יסודות Android' עם 'כתיבה' ומצמצמים את התבניות הסטנדרטיות באפליקציה
התנסות מעשית עם שלוש ספריות Jetpack שמפשטות את שכבת הנתונים: LiveData, ViewModel ו- Room
מגלים איך משתמשים יחד בספריות Jetpack הכי פופולריות באפליקציה ברמת הייצור

חדשות וסרטונים