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

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

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

* בראש הדף מופיעות ספריות פופולריות שנמצאות בשימוש תכוף

activity *גישה לממשקי API שניתנים לקישור שנוצרו על סמך Activity.
appcompat *מאפשרת גישה לממשקי API חדשים בגרסאות API ישנות יותר של הפלטפורמה (רבים מהם משתמשים ב-Material Design).
appsearch *פיתוח יכולות חיפוש מותאמות אישית בתוך האפליקציה עבור המשתמשים שלך.
camera *פיתוח אפליקציות של מצלמה לנייד.
compose *הגדרה פרוגרמטית של ממשק המשתמש באמצעות פונקציות שניתנות ליצירה שמתארות את הצורה שלו ואת יחסי התלות בנתונים.
databinding *קישור רכיבי ממשק המשתמש בפריסות למקורות הנתונים באפליקציה באמצעות פורמט דקלרטיבי.
קטע *פלח את האפליקציה שלך למספר מסכים עצמאיים המתארחים בפעילות.
hilt *הרחבת הפונקציונליות של Dagger Hilt כדי לאפשר החדרת תלות של מחלקות מסוימות מספריות androidx.
lifecycle *לפתח רכיבים עם התייחסות למחזור החיים שיכולים לשנות את ההתנהגות על סמך המצב הנוכחי של מחזור החיים של פעילות או של מקטע.
רכיבים של עיצוב חומר * רכיבי ממשק משתמש מודולריים וניתנים להתאמה אישית ב-Material Design ל-Android.
ניווט *ליצור ולבנות את ממשק המשתמש בתוך האפליקציה, לטפל בקישורי עומק ולנווט בין מסכים.
חלוקה לדפים *לטעון נתונים בדפים ולהציג אותם ב-RecyclerView.
room *יצירה, אחסון וניהול של נתונים קבועים שמגובים על ידי מסד נתונים של SQLite.
test *בדיקה ב-Android.
work *מתזמנים ומבצעים משימות מבוססות-אילוצים ברקע, שאי אפשר לשנות את ההגדרות שלהן.
adsקבלת מזהה פרסום עם או בלי Play Services.
הערהחשיפת מטא-נתונים שעוזרים לכלים ולמפתחים אחרים להבין את קוד האפליקציה.
arch.coreעוזר ליחסי תלות אחרים של קשתות, כולל כללי בדיקה של JUnit שניתן להשתמש בהם עם LiveData.
asynclayoutinflaterמתנפחים פריסות באופן אסינכרוני כדי למנוע בעיות בממשק המשתמש.
autofillשיפור הדיוק של המילוי האוטומטי באמצעות הרחבת הטיפים.
בנצ'מרקמדידת הביצועים של הקוד במדויק ב-Android Studio.
ביומטריאימות באמצעות מידע ביומטרי או פרטי כניסה של המכשיר, וביצוע פעולות קריפטוגרפיות.
Bluetoothשימוש בתכונות ה-Bluetooth של פלטפורמת Android עם ממשקי API שתואמים לאחור.
דפדפןהצגת דפי אינטרנט בדפדפן ברירת המחדל של המשתמש.
camera.viewfinderעינית עצמאית ומבוססת-עינית למצלמה"
car-appפיתוח אפליקציות לפי תבניות ל-Android Auto ול-Android Automotive OS.
cardviewמטמיעים את תבנית הכרטיס Material Design עם פינות מעוגלות והטלת צלליות.
collectionהפחתת ההשפעה על הזיכרון של אוספים קיימים וחדשים בגודל קטן.
compose.animationיוצרים אנימציות באפליקציות 'Jetpack פיתוח נייטיב' כדי להעשיר את חוויית המשתמש.
compose.compilerשינוי פונקציות מסוג @Composable והפעלת אופטימיזציות באמצעות פלאגין של קומפילר Kotlin.
compose.foundationכתיבת אפליקציות ב-Jetpack Compose באמצעות אבני בניין מוכנות לשימוש והרחבת הבסיס ליצירת רכיבים משלכם של מערכת עיצוב.
compose.materialבניית ממשקי משתמש ב-Jetpack פיתוח נייטיב עם רכיבים מוכנים לשימוש ב-Material Design. זוהי נקודת הכניסה ברמה גבוהה יותר של Compose, שנועדה לספק רכיבים שתואמים לאלה שמתוארים בכתובת www.material.io.
compose.material3פיתוח ממשקי משתמש ב-Jetpack פיתוח נייטיב עם רכיבי Material Design 3, הפיתוח הבא של עיצוב Material Design. Material 3 כולל עיצוב ורכיבים מעודכנים ותכונות התאמה אישית של Material You, כמו צבעים דינמיים, ונועד להיות אחיד עם הסגנון החזותי החדש של Android 12 וממשק המשתמש של המערכת.
compose.material3.adaptiveלהשתמש בספרייה הדינמית של Material 3 כדי ליצור ממשקי משתמש מותאמים שתתאימו את עצמם באופן אוטומטי בהתאם לחלון הנוכחי הגדרות כמו סיווגי גודל של חלונות או מיקומים של מכשירים. הספרייה מספקת גם הטמעות של תבניות ברירת מחדל וגם אבני בניין נדרשות ליצירת חוויות משלכם בהתאמה אישית.
compose.runtimeאבני הבניין הבסיסיות של מודל התכנות ושל ניהול המצב ב-Compose, וזמן הריצה הליבה שאליו פונה הפלאגין של Compose Compiler.
compose.uiרכיבים בסיסיים בממשק המשתמש של הרכבה שנדרשים לאינטראקציה עם המכשיר, כולל פריסה, שרטוט וקלט.
בו-זמניתמעבירים משימות מהשרשור הראשי באמצעות קורוטין ומנצלים את היתרון של ListenableFuture.
constraintlayoutמיקום וגודל של ווידג'טים באופן גמיש באמצעות מיקום יחסי.
contentpagerטעינה של נתוני ContentProvider וחלוקה לדפים בשרשור ברקע.
coordinatorlayoutמציבים ווידג'טים של אפליקציה ברמה העליונה, כמו AppBarLayout ו-FloatingActionButton.
coreכדאי לטרגט את תכונות הפלטפורמה וממשקי ה-API החדשים ביותר, ובמקביל לתמוך במכשירים ישנים.
core.uwbהטמעת UWB (Ultra Wideband) במכשירים נתמכים.
פרטי כניסה הספרייה הזו מספקת גישה מאוחדת לפרטי הכניסה של משתמש. למשל סיסמאות, מפתחות גישה ופרטי כניסה מאוחדים. יש להשתמש בספרייה הזו כדי לספק חוויית כניסה חלקה ומאובטחת.
cursoradapterחשיפת נתוני הסמן לווידג'ט ListView.
customviewיישום תצוגות מותאמות אישית.
datastoreאחסון נתונים באופן אסינכרוני, בעקביות ובאופן טרנזקציות, כדי להתגבר על כמה מהחסרונות של SharedPreferences
documentfileהצגת מסמך של קובץ.
גרירהמקבלים נתונים מסוג 'גרירה ושחרור' מאפליקציה אחרת או מתוך אפליקציה, ומשיגים ירידה עקבית במחיר היעד.
drawerlayoutהטמעת ווידג'ט של תיבה נפתחת בעיצוב Material.
dynamicanimationיצירת אנימציות חלקות באמצעות ממשק API לאנימציה שמבוסס על פיזיקה.
אמוג'יהצגת אמוג'י במכשירים נוכחיים וישנים יותר.
emoji2הצגת אמוג'י במכשירים נוכחיים וישנים יותר.
גרסה לארגוניםיצירת אפליקציות שמוכנות לשימוש בארגון.
exifinterfaceקריאה וכתיבה של תגי EXIF בקובצי תמונות.
משחקיםשימוש ב-Android Game SDK באופן מקורי באפליקציה כדי לבצע משימות מורכבות במשחקים, כמו Frame Pacing.
בקצרהפיתוח פריסות למשטחים מרוחקים באמצעות ממשק API בסגנון Jetpack Compose.
graphicsניצול היתרונות הגרפיים במספר גרסאות של פלטפורמת Android
gridlayoutהטמעת פריסת רשת.
healthיצירת אפליקציות בריאות בעלות ביצועים טובים באופן בלתי תלוי בפלטפורמה.
health.connectמאפשרת למפתחים לקרוא או לכתוב את רשומות הבריאות והכושר של המשתמשים.
heifwriterקידוד תמונה או אוסף תמונות בפורמט HEIF באמצעות רכיבי הקודק הזמינים במכשיר Android.
דיומעוררים השראה לאפליקציות עט מהשורה הראשונה. נסו להנמיך את מחסום הכניסה למפתחים כדי ליהנות מחוויות כתיבה יפות וביצועים טובים.
קלטצמצום זמן האחזור של אינטראקציות הקלט על ידי חיזוי אירועי MotionEvents עתידיים
אינטרפולטורהשתמשו באינטרפולטורים לאנימציה בפלטפורמות ישנות.
javascriptengineאיך להפעיל את JavaScript באפליקציה ל-Android.
jetifierכלי עצמאי להעברת יחסי התלות של ספרייה בספריית התמיכה הקודמת ליחסי תלות מקבילים ב-AndroidX.
leanbackכדאי להשתמש ב'כתיבה' לטלוויזיה במקום בפריט המידע הזה שנוצר בתהליך הפיתוח (Artifact).
מדור קודםפריט המידע הזה שנוצר בתהליך הפיתוח (Artifact) והמחלקות שלו הוצאו משימוש. החל מגרסה 8 של Android, ההגבלות על בדיקת הרקע הופכות את הסיווג הזה ללא שימושי.
lintבדיקות לאיתור שגיאות בקוד (lint) לאימות השימוש ב-Gradle API
loaderטעינת נתונים של ממשק המשתמש אחרי שינויי ההגדרות האישיות.
localbroadcastmanagerפריט המידע הזה שנוצר בתהליך הפיתוח (Artifact) והמחלקות שלו הוצאו משימוש. במקום זאת, כדאי להשתמש ב-LiveData או ב-reactive streams.
mediaשיתוף של תוכן מדיה ופקדים עם אפליקציות אחרות. הוחלפה על ידי media2.
media2לשתף תוכן מדיה ואמצעי בקרה עם אפליקציות אחרות.
media3 *ספריות תמיכה לתרחישי שימוש של מדיה.
mediarouterהפעלת הצגה והפעלה של מדיה במכשירי מקלט מרוחקים באמצעות ממשק משתמש משותף.
multidexפריסת אפליקציות עם מספר קובצי dex במכשירים עם מערכת הפעלה ישנה יותר מ-Android 5.
מדדיםמעקב אחרי מדדי זמן ריצה שונים של האפליקציה ודיווח עליהם
paletteחילוץ של לוחות צבעים מייצגים מתמונות.
pdfספרייה להוספת יכולות צפייה בקובצי PDF בתוך אפליקציות.
percentlayoutפריט המידע הזה שנוצר בתהליך הפיתוח (Artifact) והמחלקות שלו הוצאו משימוש. במקום זאת, צריך להשתמש ב-ConstraintLayout ובפריסות המשויכות.
העדפהפיתוח מסכי הגדרות אינטראקטיביים בלי צורך באינטראקציה עם נפח האחסון במכשיר או בניהול ממשק המשתמש.
printאפשר להדפיס תמונות, מסמכים ותמונות ופריטי גרפיקה אחרים מהאפליקציה.
privacysandbox.activityTODO
privacysandbox.adsהספרייה הזו מאפשרת שילוב עם ממשקי API לשמירה על הפרטיות, שהם חלק מארגז החול לפרטיות ב-Android.
privacysandbox.pluginsAndroid Privacy Sandbox Sdk Library Gradle Plugin
privacysandbox.sdkruntime.הספרייה הזו מספקת רכיבים לצרכנים שמודעים ל-SdkRuntime
privacysandbox.toolsספרייה שאפשר להשתמש בה בפונקציונליות של ארגז החול לפרטיות ב-Android
privacysandbox.uiTODO
profileinstallerמאפשרת לספריות לאכלס מראש את עקבות ה-compilation ש-ART יקרא.
המלצהלקדם תוכן למסך הבית של Android TV Launcher.
recyclerviewהצגת קבוצות גדולות של נתונים בממשק המשתמש תוך צמצום השימוש בזיכרון.
remotecallbackיצירת wrapper שיקל על המפתחים לספק PendingIntent.
resourceinspectionמומלץ להציג את המאפיינים של תצוגות בהתאמה אישית בכלי לבדיקת פריסה בזמן אמת של Android Studio.
savedstateכותבים רכיבים נשלפים ששומרים את מצב ממשק המשתמש כשתהליך מסוים מסתיים, ומשחזרים אותו כשהתהליך מופעל מחדש.
אבטחהניהול בטוח של מפתחות והצפין של קבצים והעדפות משותפות.
sharetargetתאימות לאחור לשימוש בקיצורי דרך כיעדי שיתוף ישיר.
sliceהצגת רכיבי ממשק משתמש לפי תבנית מחוץ לאפליקציה.
slidingpanelayoutהטמעת דפוס ממשק משתמש של חלונית הזזה.
startupהטמעת דרך פשוטה ומשתלמת לאתחל רכיבים בזמן ההפעלה של האפליקציה.
sqliteלעבוד עם מסדי נתונים מקומיים של SQLite. אם אפשר, כדאי להשתמש ב-Room במקום ב-Meet.
sOncerefreshrefreshlayoutהטמעת התבנית של ממשק המשתמש לסחיטה לרענון.
test.uiautomatorמסגרת לבדיקת ממשק משתמש פונקציונלי באפליקציות שונות
textclassifierזיהוי שיחות, קישורים, בחירות ומבנים דומים אחרים בטקסט.
מעקבכתיבת אירועי מעקב במאגר הנתונים הזמני של המערכת.
transitionמוסיפים אנימציה של התנועה בממשק המשתמש בעזרת פריסות של התחלה וסיום.
טלוויזיהמאפשר למפתחים להשתמש בפונקציות של Compose ו-Material Design כדי לכתוב אפליקציות לטלוויזיה
tvproviderלספק ערוצים ל-Android TV.
vectordrawableעיבוד של גרפיקה וקטורית.
versionedparcelableהאפליקציה מספקת פורמט יציב וקומפקטי לביצוע סריאליזציה בינארית, שאפשר להעביר בין תהליכים או לשמור אותם בצורה בטוחה.
צפייההצגת תצוגות או קטעים בפורמט שניתן להחליק. אם אפשר, השתמשו במקום זאת ב-viewpager2.
viewpager2הצג תצוגות או מקטעים בפורמט שניתן להחלקה.
בגדיםיצירת אפליקציות לשעונים חכמים של Wear OS by Google.
wear.composeכתיבת אפליקציות של Jetpack Compose למכשירים לבישים באמצעות אספקת פונקציונליות לתמיכה במכשירים לבישים ספציפיים, גדלים, צורות וסוגים מסוימים תנועות ניווט.
wear.protolayoutהספרייה הזו מאפשרת להגדיר קבוצה של פריסות ממשק משתמש וביטויים שאינם ממשק משתמש לצורך רינדור או הערכה במשטחים מרוחקים.
wear.tilesיצירת אפליקציות לשעונים חכמים של Wear OS by Google.
wear.watchfaceיצירת אפליקציות לשעונים חכמים של Wear OS by Google.
webkitעבודה עם ממשקי WebView API מודרניים ב-Android מגרסה 5 ואילך.
חלוןההגדרה הזו עוזרת לתמוך בגורמי צורה שונים של מכשירים, כמו מכשירים מתקפלים.
window.extensions.coreממשקי ה-API העיקריים לתוספים של ספריית מנהל החלונות
כתיבה באוגוסט 2023
הגרסה של Jetpack Compose 1.5.0 עוברת ליציבות ומביאה לשיפורים משמעותיים בביצועים, כולל ארגון מחדש (Refactoring) של כלים ברמה גבוהה כמו 'Clickable' [קליקבילי] שיכול לקצר את זמן היצירה ב-80%. באוגוסט 2023 התכונה 'כתיבה מהירה' משפרת גם עד 70% בהקצאת הזיכרון (במיוחד במקבץ הגרפיקה), מה שיפחית את טביעת הרגל הפחמנית של הכתיבה במכשירים.
Wear Compose וכרטיסי מידע 1.2
כרטיסי המידע ב-Wear Compose וגם המשבצות של Wear עברו למצב יציב כדי לשפר את החוויה של המפתחים של WearOS. שתיהן משלימות אחת את השנייה, ואפשר להשתמש ב-Wear Compose כדי ליצור מסכי אפליקציה מורכבים במכשירי Wear, ואפשר להשתמש בכרטיסי המידע ב-Wear כדי ליצור את משבצות האפליקציה. הגרסה החדשה של Wear Compose כוללת פונקציות חדשות, כמו 'פריטים שניתנים להרחבה' ו'החלקה לפתיחה'. הגרסה החדשה של Wear Tiles תומכת עכשיו גם באנימציה של ווידג'טים ובקישור נתונים לפלטפורמה (למשל, מקור לנתוני בריאות).
חלון 1.1
1.1 מייצב את ממשקי ה-API להטמעת פעילות, ומאפשר לאפליקציות כמו WhatsApp,‏ eBay ו-Temu לשלוח פריסות למסכים גדולים. ה-API מציע תכונות נוספות, כי הוא מאפשר למפתחים לשנות התנהגות של מסך מפוצל, לבדוק (ולשנות) את מצב המפוצל בזמן הריצה, להטמיע פיצולים אופקיים ולהתחיל חלון מלא בחלון מלא.
נתוני גרסה
מידע נוסף זמין בפתקים לגבי הגרסה.

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

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

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