Android Jetpack
Jetpack هي مجموعة من المكتبات لمساعدة المطوّرين على اتّباع أفضل الممارسات وتقليل الرموز النموذجية وكتابة الرموز البرمجية التي تعمل بشكل متّسق على جميع إصدارات Android والأجهزة حتى يتمكّن المطوّرون من التركيز على الرمز البرمجي الذي يهمهم.
Jetpack Compose
تطوير واجهة المستخدم باستخدام Compose
مجموعة أدوات حديثة لإنشاء واجهة مستخدم أصلية تمكّنك من تبسيط عملية تطوير واجهة المستخدم على Android وتسريعها.
التعرّف على كيفية استخدام Jetpack
الدورة التدريبية الخاصة بالأساسيات
تعلَّم مكتبات Jetpack الأساسية في دورة Android Basics (أساسيات Android) من خلال الدورة التدريبية Compose وقلِّل النصوص النموذجية في تطبيقك.
برنامج تعليمي عملي
احصل على تجربة عملية من خلال ثلاث مكتبات Jetpack تبسّط طبقة بياناتك: LiveData وViewModel وroom
الآن في نموذج تطبيق Android
استكشاف كيفية تطبيق بنية Android الحديثة في تطبيق واقعي
مكتبات Jetpack استكشاف جميع المكتبات
* يتم إدراج المكتبات الرائجة والمستخدَمة كثيرًا أولاً.
activity * | الوصول إلى واجهات برمجة التطبيقات القابلة للتجميع والمبنية على "نشاطك على Google" |
appcompat * | السماح بالوصول إلى واجهات برمجة تطبيقات جديدة على إصدارات قديمة من واجهات برمجة التطبيقات في النظام الأساسي (العديد منها يستخدم أسلوب Material Design) |
appsearch * | يمكنك إنشاء إمكانات بحث مخصّصة داخل التطبيق للمستخدمين. |
الكاميرا * | إنشاء تطبيقات كاميرا للأجهزة الجوّالة |
إنشاء * | يمكنك تحديد واجهة المستخدم آليًا باستخدام دوال قابلة للتجميع تصف شكلها وتبعيات البيانات. |
databinding * | ربط مكوّنات واجهة المستخدم في التنسيقات بمصادر البيانات في تطبيقك باستخدام تنسيق تعريفي |
المقاطع * | يمكنك تقسيم تطبيقك إلى شاشات متعددة مستقلة يتم استضافتها ضمن نشاط. |
hilt * | يمكنك توسيع وظائف Dagger Hilt لتفعيل ميزة "حقن التبعيات" لفئات معيّنة من مكتبات androidx. |
lifecycle * | أنشئ مكوّنات مدركة لمراحل النشاط التي يمكنها تعديل السلوك استنادًا إلى حالة مرحلة النشاط الحالية لنشاط أو جزء. |
مكوّنات تصميم المواد * | مكونات واجهة مستخدِم التصميم المتعدّد الأبعاد (Material Design) القابلة للتخصيص والمكوّنة من وحدات لنظام التشغيل Android |
navigation * | إنشاء واجهة المستخدم داخل التطبيق وتنظيمها، ومعالجة الروابط لصفحات في التطبيق، والتنقّل بين الشاشات |
الفهرسة * | تحميل البيانات في صفحات وعرضها في RecyclerView |
غرفة * | إنشاء بيانات دائمة وحفظها وإدارتها باستخدام قاعدة بيانات SQLite |
test * | الاختبار على Android |
العمل * | جدولة المهام التي يمكن تأجيلها والمستندة إلى القيود وتنفيذها في الخلفية |
ads | الحصول على معرِّف إعلاني باستخدام "خدمات Play" أو بدونها |
تعليق توضيحي | عرض البيانات الوصفية التي تساعد الأدوات والمطوّرين الآخرين في فهم رمز تطبيقك البرمجي |
arch.core | مساعد لعناصر الاعتماد الأخرى في البنية الأساسية، بما في ذلك قواعد اختبار JUnit التي يمكن استخدامها مع LiveData |
asynclayoutinflater | يجب تضخيم التنسيقات بشكل غير متزامن لتجنُّب حدوث تقطُّع في واجهة المستخدم. |
الملء التلقائي | تحسين دقة الملء التلقائي من خلال توسيع نطاق التلميح |
مقياس الأداء | قياس أداء الرمز البرمجي بدقة في "استوديو Android" |
سمة بيومترية | المصادقة باستخدام المقاييس الحيوية أو بيانات اعتماد الجهاز وتنفيذ العمليات التشفيرية |
البلوتوث | استخدام ميزات البلوتوث في نظام التشغيل Android مع واجهات برمجة التطبيقات المتوافقة مع الإصدارات القديمة |
المتصفّح | عرض صفحات الويب في المتصفّح التلقائي للمستخدم |
camera.media3 | TODO |
camera.viewfinder | عدسة كاميرا مستقلة قابلة للتجميع والعرض |
car-app | إنشاء تطبيقات مستندة إلى نماذج لنظامَي التشغيل Android Auto وAndroid Automotive |
cardview | طبِّق نمط بطاقة تصميم المواد باستخدام حواف مستديرة وتأثيرات ظلّية. |
collection | يمكنك تقليل تأثير الذاكرة للمجموعات الصغيرة الحالية والجديدة. |
compose.animation | إنشاء صور متحركة في تطبيقات Jetpack Compose لتحسين تجربة المستخدم |
compose.compiler | حوِّل وظائف @Composable وفعِّل التحسينات باستخدام مكوّن إضافي لمجمّع لغة Kotlin. |
compose.foundation | يمكنك كتابة تطبيقات Jetpack Compose باستخدام وحدات أساسية جاهزة للاستخدام وتوسيع الأساس لإنشاء أجزاء نظام التصميم الخاص بك. |
compose.material | أنشئ واجهات مستخدم Jetpack Compose باستخدام مكونات 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 المتوافقة مع مختلف الأجهزة لإنشاء واجهات مستخدم متوافقة مع مختلف الأجهزة ستتلاءم تلقائيًا وفقًا لإعدادات النافذة الحالية، مثل فئات حجم النافذة أو أوضاع الجهاز. توفّر المكتبة كلاً من عمليات تنفيذ إطار العمل التلقائية وعناصر الوحدات الأساسية اللازمة لإنشاء تجاربك المخصّصة. |
compose.runtime | الوحدات الأساسية لنموذج برمجة Compose وإدارة الحالة، ووقت التشغيل الأساسي الذي يستهدفه مكوّن Compose Compiler الإضافي |
compose.ui | المكونات الأساسية لواجهة المستخدم الخاصة بإنشاء الرسائل اللازمة للتفاعل مع الجهاز، بما في ذلك التنسيق والرسم والإدخال |
متزامنة | نقل المهام خارج سلسلة المحادثات الرئيسية باستخدام وظائف التشغيل المتزامنة والاستفادة من ListenableFuture |
constraintlayout | يمكنك وضع التطبيقات المصغّرة وضبط حجمها بطريقة مرنة باستخدام الوضع النسبي. |
contentpager | تحميل بيانات ContentProvider وتصفّحها في سلسلة مهام في الخلفية |
coordinatorlayout | حدِّد موضع التطبيقات المصغّرة ذات المستوى الأعلى، مثل AppBarLayout وFloatingActionButton. |
core | استهدِف أحدث ميزات المنصة وواجهات برمجة التطبيقات مع توفير التوافق مع الأجهزة القديمة أيضًا. |
core.uwb | استخدام تقنية النطاق الفائق العرض (UWB) على الأجهزة المتوافقة |
بيانات الاعتماد | توفّر هذه المكتبة إمكانية وصول موحّدة إلى بيانات اعتماد المستخدم. ويمكن أن يشمل ذلك كلمات المرور ومفاتيح المرور وبيانات الاعتماد المُدمَجة. يجب استخدام هذه المكتبة لتوفير تجارب تسجيل دخول سلسة وآمنة. |
credentials.registry | لحلّ هذه المشاكل، نعمل على إضافة آلية تسجيل جديدة تسمح للتطبيق بتقديم بيانات اعتماد رقمية بطريقة تحافظ على الخصوصية. على مستوى عالٍ، سيُسجِّل تطبيق الموفِّر مسبقًا جميع بيانات الاعتماد الرقمية المُحتمَلة باستخدام "مدير بيانات الاعتماد". وعندما يتلقّى "مدير بيانات الاعتماد" طلبًا من أحد التطبيقات للحصول على بيانات اعتماد رقمية معيّنة، سيشغِّل واجهة مستخدم مطابقة بيانات الاعتماد واختيار المستخدم في بيئة اختبار. |
cursoradapter | عرِض بيانات Cursor في تطبيق مصغّر من نوع ListView. |
customview | تنفيذ طرق العرض المخصّصة |
datastore | تخزين البيانات بشكل غير متزامن ومتسق ومرتبط بالمعاملات، ما يحلّ بعض مشاكل SharedPreferences |
documentfile | عرض مستند ملف |
draganddrop | قبول سحب البيانات وإفلاتها من تطبيق آخر أو داخل تطبيق، وعرض عنصر تحكم ملائم للإفلات بشكل ثابت |
drawerlayout | تنفيذ تطبيق مصغّر لدرج التصميم المتعدد الأبعاد |
dynamicanimation | إنشاء صور متحركة سلسة باستخدام واجهة برمجة تطبيقات للصور المتحركة المستندة إلى قوانين الفيزياء |
الرموز التعبيرية | عرض رموز الإيموجي في الأجهزة الحالية والقديمة |
emoji2 | عرض رموز الإيموجي في الأجهزة الحالية والقديمة |
enterprise | إنشاء تطبيقات متوافقة مع المؤسسات |
exifinterface | قراءة علامات EXIF لملف الصورة وكتابتها |
الألعاب | استخدِم حزمة تطوير البرامج (SDK) لألعاب Android بشكلٍ أصلي في تطبيقك لتنفيذ مهام الألعاب المعقدة، مثل "معدّل عرض اللقطات". |
نظرة سريعة | إنشاء تصاميم للمساحات البعيدة باستخدام واجهة برمجة تطبيقات بأسلوب Jetpack Compose |
الرسومات | الاستفادة من مرافق الرسومات في إصدارات متعددة من نظام Android الأساسي |
gridlayout | طبِّق تنسيق شبكة. |
health | إنشاء تطبيقات صحية عالية الأداء بطريقة لا تعتمد على المنصة |
health.connect | يسمح هذا الإذن للمطوّرين بقراءة سجلّات الصحة واللياقة البدنية للمستخدم أو كتابتها. |
heifwriter | يمكنك ترميز صورة أو مجموعة صور بتنسيق HEIF باستخدام برامج الترميز المتاحة على جهاز Android. |
ink | استلهام تطبيقات القلم الأفضل في فئتها خفض متطلبات المطوّرين للاستفادة من تجارب الكتابة اليدوية العالية الأداء والجميلة |
إدخال | تقليل وقت استجابة تفاعلات الإدخال من خلال توقّع أحداث MotionEvents المستقبلية |
المُشفِّر | استخدام أدوات الاستبدال في الرسوم المتحركة على المنصات القديمة |
javascriptengine | فعِّل تطبيق Android لتقييم JavaScript. |
jetifier | أداة مستقلة تنقل العناصر التابعة للمكتبة من مكتبة الدعم المتوقّفة نهائيًا إلى العناصر التابعة لنظام AndroidX المعادل |
leanback | استخدِم ميزة "إنشاء" للتلفزيون بدلاً من هذا العنصر. |
قديمة | تم إيقاف هذا العنصر وفئاته نهائيًا. اعتبارًا من Android 8، تجعل القيود المفروضة على عمليات التحقّق من الخلفية هذه الفئة غير مفيدة. |
lint | عمليات التحقّق من Lint للتأكّد من استخدام واجهات برمجة تطبيقات Gradle |
loader | تحميل بيانات واجهة المستخدم التي لا تتأثر بتغييرات الإعدادات |
localbroadcastmanager | تم إيقاف هذا العنصر وفئاته نهائيًا. استخدِم LiveData أو أحداث البث التفاعلي بدلاً من ذلك. |
media | مشاركة محتوى الوسائط وعناصر التحكّم فيه مع تطبيقات أخرى تم استبداله بـ media3. |
media2 | مشاركة محتوى الوسائط وعناصر التحكّم فيه مع تطبيقات أخرى |
media3 * | توفّر المكتبات لحالات استخدام الوسائط |
mediarouter | تفعيل عرض الوسائط وتشغيلها على أجهزة الاستقبال عن بُعد باستخدام واجهة مستخدم شائعة |
multidex | نشر التطبيقات التي تحتوي على عدة ملفات dex على الأجهزة التي تعمل بإصدار أقدم من Android 5 |
المقاييس | تتبُّع مقاييس وقت التشغيل المختلفة لتطبيقك والإبلاغ عنها |
palette | استخراج لوحات ألوان تمثيلية من الصور |
مكتبة لإضافة إمكانات عرض ملفات pdf داخل التطبيقات | |
percentlayout | تم إيقاف هذا العنصر وفئاته نهائيًا. استخدِم ConstraintLayout والتنسيقات المرتبطة به بدلاً من ذلك. |
الأداء | يوفّر تعليقات توضيحية للمصدر لتحسينات الأداء. |
الإعدادات المفضّلة | يمكنك إنشاء شاشات إعدادات تفاعلية بدون الحاجة إلى التفاعل مع مساحة التخزين في الجهاز أو إدارة واجهة المستخدم. |
طباعة | طباعة الصور والمستندات والرسومات والصور الأخرى من تطبيقك |
privacysandbox.activity | TODO |
privacysandbox.ads | تتيح هذه المكتبة الدمج مع واجهات برمجة التطبيقات المخصّصة للحفاظ على الخصوصية، والتي تشكّل جزءًا من "مبادرة حماية الخصوصية" على Android. |
privacysandbox.plugins | مكوّن إضافي لنظام Gradle في مكتبة حزمة تطوير البرامج (SDK) لـ "مبادرة حماية الخصوصية" على Android |
privacysandbox.sdkruntime | توفّر هذه المكتبة مكوّنات للمستهلكين المدرِكين لواجهة SdkRuntime. |
privacysandbox.tools | مكتبة لاستخدام وظائف "مبادرة حماية الخصوصية" في Android |
privacysandbox.ui | TODO |
profileinstaller | تتيح هذه الميزة للمكتبات تعبئة عمليات التجميع مسبقًا لتتم قراءتها من خلال ART. |
اقتراح | الترويج للمحتوى على الشاشة الرئيسية لتطبيق Android TV Launcher |
recyclerview | عرض مجموعات كبيرة من البيانات في واجهة المستخدم مع تقليل استخدام الذاكرة إلى الحد الأدنى |
remotecallback | أنشئ حزمة خارجية تسهّل على المطوّرين تقديم PendingIntent. |
resourceinspection | عرض سمات العروض المخصّصة في "أداة فحص التنسيق المباشر" في Android Studio |
savedstate | اكتب مكوّنات قابلة للتوصيل تحفظ حالة واجهة المستخدم عند إيقاف عملية ما، وتستعيدها عند إعادة تشغيل العملية. |
الأمان | إدارة المفاتيح بأمان وتشفير الملفات وsharedpreferences |
sharetarget | توفير التوافق مع الإصدارات القديمة لاستخدام الاختصارات كأهداف مشاركة مباشرة |
slice | عرض عناصر واجهة مستنِدة إلى نموذج خارج تطبيقك |
slidingpanelayout | نفِّذ نمط واجهة مستخدم للوحة منزلقة. |
startup | نفِّذ طريقة مباشرة وعالية الأداء لإعداد المكوّنات عند بدء تشغيل التطبيق. |
sqlite | العمل مع قواعد بيانات SQLite المحلية استخدِم Room بدلاً من ذلك، إن أمكن. |
swiperefreshlayout | نفِّذ نمط واجهة المستخدم "السحب لإعادة التحميل". |
test.uiautomator | إطار عمل لاختبار واجهة المستخدم الوظيفية على مستوى التطبيقات |
textclassifier | لتحديد المحادثات والروابط والاختيارات وغيرها من العناصر المشابهة في النص |
التتبّع | كتابة أحداث التتبُّع في ذاكرة التخزين المؤقت لتتبُّع النظام |
transition | أضِف حركة متحركة في واجهة المستخدم باستخدام التنسيقات الأساسية والنهائية. |
tv | يوفّر للمطوّرين وظائف Compose وMaterial Design من أجل كتابة تطبيقات للتلفزيون |
tvprovider | توفير قنوات Android TV |
xr.arcore | عرض المحتوى الرقمي في العالم الحقيقي باستخدام إمكانات الإدراك |
xr.compose | إنشاء تصاميم واجهة مستخدم مكانية بشكل صريح تستفيد من الإمكانات المكانية لنظام Android XR |
xr.compose.material3 | إنشاء تطبيقات باستخدام مكونات وتخطيطات Material Design التي تتكيّف مع الواقع المعزّز |
xr.runtime | ابدأ جلسة الواقع المعزّز أو الجلسة الثلاثية الأبعاد المخصّصة باستخدام وقت التشغيل الأصلي. |
xr.scenecore | أنشئ رسمًا بيانيًا للمشهد في Android XR وحرِّكه باستخدام محتوى ثلاثي الأبعاد. |
vectordrawable | عرض الرسومات المتّجهة |
versionedparcelable | يوفّر تنسيقًا ثابتًا ومكثّفًا لتسلسل البيانات الثنائية يمكن تمريره عبر العمليات أو الاحتفاظ به بأمان. |
viewpager | عرض "المشاهدات" أو "المقاطع" بتنسيق قابل للتمرير السريع استخدِم ViewPager2 بدلاً من ذلك إن أمكن. |
viewpager2 | عرض "المشاهدات" أو "المقاطع" بتنسيق قابل للتمرير السريع |
wear | إنشاء تطبيقات لساعات Wear OS الذكية من Google |
wear.compose | يمكنك كتابة تطبيقات Jetpack Compose للأجهزة القابلة للارتداء من خلال توفير وظائف تتيح استخدام الأجهزة والأشكال والحركات المتعلّقة بالتنقّل الخاصة بالأجهزة القابلة للارتداء. |
wear.protolayout | تسمح هذه المكتبة بتحديد مجموعة من تنسيقات واجهة المستخدم وتعبيرات غير واجهة المستخدم لعرضها أو تقييمها على مساحات العرض البعيدة. |
wear.tiles | إنشاء تطبيقات لساعات Wear OS الذكية من Google |
wear.watchface | إنشاء تطبيقات لساعات Wear OS الذكية من Google |
webkit | العمل مع واجهات برمجة التطبيقات الحديثة لـ WebView على الإصدار 5 من نظام التشغيل Android والإصدارات الأحدث |
window | المساعدة في توفير أشكال مختلفة للأجهزة، مثل الأجهزة القابلة للطي |
window.extensions.core | واجهات برمجة التطبيقات الأساسية لإضافات مكتبة "مدير النوافذ" |
لماذا يُنصح باستخدام Android Jetpack؟
اتّباع أفضل الممارسات
ويستند نظام "مكتبات Android Jetpack" إلى ممارسات التصميم الحديثة، ما يتيح تقليل الأعطال وتقليل التسرُّب في الذاكرة من خلال التوافق مع الأنظمة القديمة.
إزالة الرمز النموذجي
يدير Android Jetpack الأنشطة المملة، مثل المهام في الخلفية والتنقّل وإدارة مراحل النشاط، ما يتيح لك التركيز على ميزات تطبيقك الرائعة.
تقليل التجزئة
يمكنك تقليل درجة التعقيد من خلال المكتبات التي تعمل باستمرار على مختلف إصدارات Android والأجهزة.