Jetpack ל-Android
Jetpack הוא חבילת ספריות של ספריות שעוזרות למפתחים לפעול לפי השיטות המומלצות, לצמצם את הקוד הסטנדרטי ולכתוב קוד שפועל באופן עקבי בכל הגרסאות והמכשירים של Android, כדי שהמפתחים יוכלו להתמקד בקוד שחשוב להם.
Jetpack פיתוח נייטיב
פיתוח ממשק משתמש באמצעות 'כתיבה'
ערכת כלים מודרנית לפיתוח ממשק משתמש מותאם, שמאפשרת לפשט ולהאיץ את הפיתוח של ממשק המשתמש ב-Android.
למה כדאי להשתמש ב-Android Jetpack?
כדאי לפעול בהתאם לשיטות המומלצות
ספריות Jetpack ב-Android מבוססות על שיטות עיצוב מודרניות, ומאפשרות פחות קריסות ופחות דליפות זיכרון בזכות תאימות לאחור.
להוציא קוד סטנדרטי
Android Jetpack מנהל פעילויות מאתגרות כמו משימות ברקע, ניווט וניהול מחזור החיים, כדי שתוכלו להתמקד במה שהופך את האפליקציה שלכם לנהדרת.
צמצום המקטעים
כדאי להשתמש בספריות שפועלות באופן עקבי בגרסאות Android ובמכשירים שונים כדי להפחית את המורכבות.
ספריות Jetpack הצגת כל הספריות
* ספריות פופולריות שנמצאות בשימוש לעתים קרובות מופיעות ראשונות
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 | חשיפת מטא נתונים שעוזרים לכלים ולמפתחים אחרים להבין את הקוד של האפליקציה. |
appfunctions | TODO |
arch.core | קובץ עזר לתלות בארכיטקטורה אחרת, כולל כללי בדיקה של JUnit שאפשר להשתמש בהם עם LiveData. |
asynclayoutinflater | כדי למנוע קפיצות בממשק המשתמש, כדאי להגדיר את הפריסות כך שיתרחבו באופן אסינכרוני. |
autofill | שיפור הדיוק של המילוי האוטומטי באמצעות הרחבת ההצעות. |
benchmark | מדידה מדויקת של ביצועי הקוד ב-Android Studio. |
ביומטרי | אימות באמצעות נתונים ביומטריים או פרטי הכניסה של המכשיר, וביצוע פעולות קריפטוגרפיות. |
bluetooth | שימוש בתכונות ה-Bluetooth של פלטפורמת Android עם ממשקי API שתואמים לאחור. |
דפדפן | הצגת דפי אינטרנט בדפדפן ברירת המחדל של המשתמש. |
camera.featurecombinationquery | TODO |
camera.media3 | TODO |
camera.viewfinder | Standalone 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.providerevents | TODO |
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 בתוך אפליקציות. | |
percentlayout | הפריט הזה והכיתות שלו הוצאו משימוש. במקום זאת, אפשר להשתמש ב-ConstraintLayout ובפריסות משויכות. |
performance | מספק אנוטציות של מקורות לאופטימיזציה של הביצועים. |
photopicker | הספרייה הזו מספקת שילוב של Compose ו-Android Views עבור הכלי המוטמע לבחירת תמונות. |
preference | ליצור מסכי הגדרות אינטראקטיביים בלי צורך באינטראקציה עם אחסון המכשיר או בניהול ממשק המשתמש. |
להדפיס תמונות, מסמכים וגרפיקה ותמונות אחרות מהאפליקציה. | |
privacysandbox.activity | TODO |
privacysandbox.ads | הספרייה הזו מאפשרת שילוב עם ממשקי API לשמירה על הפרטיות, שהם חלק מארגז החול לפרטיות ב-Android. |
privacysandbox.plugins | פלאגין Android Privacy Sandbox Sdk Library Gradle |
privacysandbox.sdkruntime | הספרייה הזו מספקת רכיבים לצרכנים שמודעים ל-SdkRuntime |
privacysandbox.tools | ספרייה לשימוש בפונקציונליות של ארגז החול לפרטיות ב-Android |
privacysandbox.ui | TODO |
profileinstaller | מאפשר לספריות לאכלס מראש עקבות של קומפילציה כדי ש-ART יוכל לקרוא אותן. |
המלצה | קידום תוכן במסך הבית של Android TV Launcher. |
recyclerview | להציג קבוצות גדולות של נתונים בממשק המשתמש תוך צמצום השימוש בזיכרון. |
remotecallback | יוצרים wrapper שמקל על מפתחים לספק PendingIntent. |
resourceinspection | הצגת המאפיינים של תצוגות בהתאמה אישית בכלי לבדיקת פריסות בשידור חי ב-Android Studio. |
savedstate | כתיבת רכיבים שניתנים להוספה, ששומרים את מצב ממשק המשתמש כשמפסיקים תהליך ומשחזרים אותו כשמפעילים מחדש את התהליך. |
אבטחה | ניהול מאובטח של מפתחות והצפנה של קבצים והעדפות משותפות. |
sharetarget | לספק תאימות לאחור לשימוש בקיצורי דרך כיעדים לשיתוף ישיר. |
slice | הצגת רכיבים בממשק משתמש מבוסס-תבנית מחוץ לאפליקציה. |
slidingpanelayout | הטמעה של תבנית ממשק משתמש של חלונית הזזה. |
startup | הטמעה של דרך פשוטה ויעילה לאתחול רכיבים בזמן הפעלת האפליקציה. |
sqlite | עבודה עם מסדי נתונים מקומיים של SQLite. אם אפשר, משתמשים ב-Room במקום זאת. |
swiperefreshlayout | הטמעה של תבנית ממשק המשתמש 'החלקה לרענון'. |
test.uiautomator | Framework 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 הכי פופולריות באפליקציה ברמת הייצור