Android Jetpack
Jetpack هي مجموعة من المكتبات لمساعدة المطوّرين على اتّباع أفضل الممارسات وتقليل الرموز النموذجية وكتابة الرموز البرمجية التي تعمل بشكل متّسق على جميع إصدارات Android والأجهزة حتى يتمكّن المطوّرون من التركيز على الرمز البرمجي الذي يهمهم.
Jetpack Compose
تطوير واجهة المستخدم باستخدام Compose
مجموعة أدوات حديثة لإنشاء واجهة مستخدم أصلية تمكّنك من تبسيط عملية تطوير واجهة المستخدم على Android وتسريعها.
لماذا يُنصح باستخدام Android Jetpack؟
اتّباع أفضل الممارسات
ويستند نظام "مكتبات Android Jetpack" إلى ممارسات التصميم الحديثة، ما يتيح تقليل الأعطال وتقليل التسرُّب في الذاكرة من خلال التوافق مع الأنظمة القديمة.
إزالة الرمز النموذجي
يدير Android Jetpack الأنشطة المملة، مثل المهام في الخلفية والتنقّل وإدارة مراحل النشاط، ما يتيح لك التركيز على ميزات تطبيقك الرائعة.
تقليل التجزئة
يمكنك تقليل درجة التعقيد من خلال المكتبات التي تعمل باستمرار على مختلف إصدارات Android والأجهزة.
مكتبات Jetpack استكشاف جميع المكتبات
* يتم أولاً إدراج المكتبات الشائعة والتي يتم استخدامها بكثرة.
النشاط * | يمكنك الوصول إلى واجهات برمجة التطبيقات القابلة للإنشاء والمستندة إلى ميزة "النشاط". |
appcompat * | تسمح هذه السياسة بالوصول إلى واجهات برمجة تطبيقات جديدة على الإصدارات الأقدم من واجهة برمجة التطبيقات من النظام الأساسي (يستخدم العديد منها Material Design). |
appsearch * | إنشاء إمكانيات بحث مخصصة داخل التطبيق للمستخدمين. |
الكاميرا * | إنشاء تطبيقات كاميرا للأجهزة الجوّالة |
إنشاء * | حدد واجهة المستخدم آليًا باستخدام دوال قابلة للإنشاء تصف شكلها وتبعيات البيانات الخاصة بها. |
ربط البيانات * | اربط مكونات واجهة المستخدم في التنسيقات بمصادر البيانات في تطبيقك باستخدام تنسيق بياني. |
جزء * | يمكنك تقسيم تطبيقك إلى شاشات متعددة ومستقلة تتم استضافتها ضمن "النشاط". |
هبة * | توسيع وظائف Dagger Hilt لتفعيل إضافة الاعتمادية لفئات معيّنة من مكتبات androidx |
دورة حياة * | يمكنك إنشاء مكوّنات تراعي مراحل النشاط ويمكن أن تضبط السلوك استنادًا إلى حالة دورة الحياة الحالية لنشاط أو جزء. |
مكوّنات التصميم المتعدد الأبعاد * | مكونات واجهة المستخدم النموذجية والقابلة للتخصيص لنظام التشغيل Android. |
navigation * | يمكنك إنشاء واجهة المستخدم داخل التطبيق وتنظيمها، والتعامل مع الروابط لصفحات في التطبيق، والتنقّل بين الشاشات. |
تقسيم النتائج على عدّة صفحات * | حمِّل البيانات في الصفحات وقدّمها في RecyclerView. |
room * | إنشاء وتخزين وإدارة البيانات المستمرة مدعومة بقاعدة بيانات SQLite. |
الاختبار * | الاختبار في Android. |
العمل * | جدولة المهام في الخلفية والتي يمكن تأجيلها وتنفيذها. |
الإعلانات | يمكنك الحصول على معرّف إعلاني مع "خدمات Play" أو بدونها. |
تعليق توضيحي | اعرض بيانات وصفية تساعد الأدوات والمطوّرين الآخرين على فهم رمز تطبيقك. |
arrow.core | مساعد للتبعيات الأساسية الأخرى، بما في ذلك قواعد اختبار JUnit التي يمكن استخدامها مع LiveData. |
asynclayoutinflater | تضخيم التنسيقات بشكل غير متزامن لتجنُّب إيقاف مؤقت في واجهة المستخدم. |
الملء التلقائي | يمكنك تحسين دقة الملء التلقائي من خلال التلميحات الإضافية. |
مقياس الأداء | يجب قياس أداء الرمز بدقة في "استوديو Android". |
المقاييس الحيوية | قم بالمصادقة باستخدام المقاييس الحيوية أو بيانات اعتماد الجهاز، وإجراء عمليات التشفير. |
البلوتوث | يمكنك استخدام ميزات البلوتوث لنظام Android الأساسي مع واجهات برمجة التطبيقات المتوافقة مع الأنظمة القديمة. |
متصفّح | عرض صفحات الويب في المتصفح التلقائي للمستخدم |
تطبيق السيارة | يمكنك إنشاء تطبيقات متوافقة مع Android Auto ونظام التشغيل Android Automotive. |
cardview | نفِّذ نمط بطاقة Material Design بزوايا مستديرة وتظليل قطرات. |
مجموعة | تقليل تأثير الذاكرة للمجموعات الحالية والجديدة التي تكون صغيرة |
compose.animation | يمكنك إنشاء صور متحركة في تطبيقات Jetpack Compose لتحسين تجربة المستخدم. |
compose.compiler | يمكنك تحويل دوال @Composable وتفعيل التحسينات باستخدام المكوّن الإضافي لبرنامج التحويل البرمجي للغة Kotlin. |
compose.foundation | يمكنك كتابة تطبيقات Jetpack Compose باستخدام الوحدات الأساسية الجاهزة للاستخدام وتوسيع نطاق الأساس لإنشاء أجزاء نظام التصميم الخاصة بك. |
compos.material | يمكنك إنشاء واجهات مستخدم في Jetpack Compose باستخدام مكوّنات "التصميم المتعدد الأبعاد" الجاهزة للاستخدام. هذه هي نقطة دخول المستوى الأعلى في Compose، والتي تم تصميمها لتوفير مكونات تتطابق مع تلك الموضّحة في www.material.io. |
compos.material3 | يمكنك إنشاء واجهات مستخدم في Jetpack Compose باستخدام مكونات Material Design 3، وهي التطوّر القادم للتصميم المتعدد الأبعاد. يتضمّن Material 3 مظاهر ومكوّنات معدَّلة وميزات تخصيص Material You، مثل الألوان الديناميكية، وتم تصميمه ليكون متماسكًا مع النمط المرئي الجديد في Android 12 وواجهة مستخدم النظام. |
compose.runtime | الوحدات الأساسية لنموذج البرمجة وإدارة الحالة في Compose، ووقت التشغيل الأساسي الذي يستهدفه المكوّن الإضافي Compose Compiler. |
compose.ui | المكونات الأساسية لواجهة مستخدم الإنشاء اللازمة للتفاعل مع الجهاز، بما في ذلك التنسيق والرسم والإدخال. |
متزامن | نقل المهام خارج سلسلة التعليمات الرئيسية باستخدام الكورروتينات والاستفادة من ListenableFuture. |
القيود | يتيح لك هذا الخيار إمكانية وضع التطبيقات المصغّرة وحجمها بطريقة مرنة مع تحديد الموضع النسبي. |
contentpager | تحميل بيانات ContentProvider وصفحاتها في سلسلة محادثات في الخلفية |
coordinatorlayout | موضع التطبيقات المصغّرة ذات المستوى الأعلى، مثل AppBarLayout وFloatingActionButton. |
الأساسية | استهدِف أحدث ميزات النظام الأساسي وواجهات برمجة التطبيقات مع دعم الأجهزة القديمة أيضًا. |
core.uwb | تنفيذ النطاق الفائق العرض (UWB) على الأجهزة المتوافقة |
بيانات الاعتماد | توفّر هذه المكتبة إمكانية وصول موحّد إلى بيانات اعتماد المستخدم. ويمكن أن يشمل ذلك كلمات المرور ومفاتيح المرور وبيانات الاعتماد الموحّدة. يجب استخدام هذه المكتبة لتقديم تجارب تسجيل دخول سلسة وآمنة. |
أداة تعديل المؤشر | عرض بيانات المؤشر على تطبيق ListView المصغّر |
عرض مخصّص | تنفيذ طرق العرض المخصّصة. |
مخزن البيانات | تخزين البيانات بشكل غير متزامن ومتسق ومعاملاً، والتغلب على بعض عيوب SharedPreferences |
ملف المستند | عرض مستند ملف |
السحب | اقبل بيانات السحب والإفلات من تطبيق آخر أو داخل تطبيق، وأظهِر العناصر المستهدفة المتسقة للإفلات. |
drawerlayout | يمكنك تنفيذ أداة درج ذات تصميم متعدد الأبعاد. |
حركة ديناميكية | إنشاء صور متحركة سلسة باستخدام واجهة برمجة تطبيقات للصور المتحركة المستندة إلى الفيزياء |
الرموز التعبيرية | عرض الرموز التعبيرية على الأجهزة الحالية والقديمة |
الرموز التعبيرية 2 | عرض الرموز التعبيرية على الأجهزة الحالية والقديمة |
للمؤسسات | إنشاء تطبيقات جاهزة للمؤسسة |
exifinterface | قراءة وكتابة علامات EXIF لملف الصور |
الألعاب | يمكنك استخدام حزمة تطوير البرامج (SDK) لألعاب Android في تطبيقك لتنفيذ مهام الألعاب المعقدة، مثل ضبط سرعة الإطارات. |
نظرة سريعة | يمكنك إنشاء تصاميم للمساحات البعيدة باستخدام واجهة برمجة تطبيقات بأسلوب Jetpack Compose. |
رسومات | استفِد من مزايا الرسومات في إصدارات متعدّدة لنظام Android |
gridlayout | تنفيذ تخطيط الشبكة. |
صحة | إنشاء تطبيقات فعّالة للصحة بطريقة لا تقتصر على النظام الأساسي |
health.connect | يسمح هذا الإذن للمطوّرين بقراءة سجلّات الصحة واللياقة البدنية أو كتابتها. |
heifwriter | يمكنك ترميز مجموعة صور أو صور بتنسيق HEIF باستخدام برامج الترميز المتاحة على جهاز Android. |
إدخال | تقليل وقت الاستجابة لتفاعلات الإدخال من خلال توقع أحداث Motionevents في المستقبل. |
أداة استقراء البيانات | استخدام برامج وسيطة لعرض الصور المتحركة على الأنظمة الأساسية القديمة. |
JavaScriptengine | يُرجى تفعيل تطبيق Android لتقييم JavaScript. |
جهاز نفاثة | أداة مستقلة تنقل تبعيات المكتبة على مكتبة الدعم المتوقّفة إلى تبعيات مكافئة من AndroidX. |
leanback | اكتب تطبيقات لأجهزة Android TV باستخدام تطبيقات مصغّرة متوافقة مع لوحة التحكّم وأجزاء النماذج. |
قديم | تم إيقاف هذا العنصر وفئاته نهائيًا. بدءًا من نظام التشغيل Android 8، لم يعُد هذا الصف مفيدًا بسبب قيود الفحص الأمني. |
الوبر | عمليات فحص Lint للتحقّق من استخدام واجهات برمجة تطبيقات Gradle |
أداة تحميل | يمكنك تحميل بيانات لواجهة المستخدم التي تنجو من تغييرات الإعدادات. |
localbroadcastmanager | تم إيقاف هذا العنصر وفئاته نهائيًا. يمكنك استخدام البيانات المباشرة أو أحداث البث المباشر بدلاً من ذلك. |
الوسائط | مشاركة محتوى الوسائط وعناصر التحكّم فيها مع تطبيقات أخرى تم استبدالها بـ media2. |
media2 | مشاركة محتوى الوسائط وعناصر التحكّم فيها مع تطبيقات أخرى |
media3 * | مكتبات الدعم لحالات استخدام الوسائط |
mediarouter | تفعيل عرض الوسائط وتشغيلها على أجهزة الاستقبال عن بُعد باستخدام واجهة مستخدم شائعة. |
multidex | نشر التطبيقات باستخدام ملفات dex متعددة على أجهزة تعمل بالإصدارات الأقدم من نظام التشغيل Android 5 |
المقاييس | تتبُّع مقاييس وقت تشغيل مختلفة لتطبيقك وإعداد تقارير عنها |
لوحة الألوان | يمكنك استخراج لوحات الألوان التمثيلية من الصور. |
percentlayout | تم إيقاف هذا العنصر وفئاته نهائيًا. يمكنك استخدام ConstraintLayout والتخطيطات المرتبطة به بدلاً من ذلك. |
الخيار المفضّل | يمكنك إنشاء شاشات إعدادات تفاعلية بدون الحاجة إلى التفاعل مع مساحة تخزين الجهاز أو إدارة واجهة المستخدم. |
طباعة | اطبع الصور والمستندات وغيرها من الرسومات والصور من تطبيقك. |
privacysandbox.activity | قائمة المهام |
privacysandbox.ads | تتيح هذه المكتبة التكامل مع واجهات برمجة التطبيقات التي تشكّل جزءًا من "مبادرة حماية الخصوصية" على Android. |
privacysandbox.المكوّنات الإضافية | المكوّن الإضافي لنظام Gradle المتوافق مع "مبادرة حماية الخصوصية" على Android |
privacysandbox.sdkruntime | توفر هذه المكتبة مكونات للمستهلكين الذين يكونون على دراية باستخدام SdkRuntime |
privacysandbox.tools | مكتبة للاستفادة من وظيفة "مبادرة حماية الخصوصية" في Android |
privacysandbox.ui | قائمة المهام |
أداة تثبيت الملفات الشخصية | تمكين المكتبات من التعبئة التلقائية لعمليات تتبع التجميع قبل الوقت لكي تتم قراءتها بواسطة ART. |
اقتراح | يمكنك الترويج للمحتوى على الشاشة الرئيسية لمشغِّل التطبيقات في Android TV. |
recyclerview | عرض مجموعات كبيرة من البيانات في واجهة المستخدم مع تقليل استخدام الذاكرة |
رد الاتصال عن بُعد | إنشاء برنامج تضمين يسهّل على المطوّرين تقديم رمز PendingIntent |
فحص الموارد | اطّلِع على سمات طرق العرض المخصّصة من خلال أداة فحص التصميم المباشر في "استوديو Android". |
savedstate | كتابة المكونات القابلة للتوصيل التي تحفظ حالة واجهة المستخدم عند انتهاء العملية، واستعادتها عند إعادة بدء العملية. |
الأمان | يمكنك إدارة المفاتيح وتشفير الملفات والتفضيلات المشتركة بأمان. |
sharetarget | توفير توافق مع الأنظمة القديمة لاستخدام الاختصارات كأهداف مشاركة مباشرة. |
شريحة | عرض عناصر واجهة المستخدم النموذجية خارج التطبيق |
slidingpanelayout | نفِّذ نمط واجهة مستخدم للجزء المنزلق. |
بدء التشغيل | تنفيذ طريقة مباشرة وفعّالة لإعداد المكوّنات عند بدء تشغيل التطبيق |
sqlite | العمل على قواعد بيانات SQLite المحلية. استخدِم الغرفة بدلاً من ذلك إذا أمكن. |
sdevrefreshlayout | نفِّذ نمط التمرير السريع لإعادة تحميل واجهة المستخدم. |
test.uiautomator | إطار عمل لاختبار واجهة المستخدم على مستوى التطبيقات المختلفة |
textclassifier | يحدد المحادثات والروابط والاختيارات والتركيبات المشابهة الأخرى في النص. |
تتبُّع | كتابة أحداث التتبُّع في المخزن المؤقت لتتبُّع النظام |
الانتقال | تحريك الحركة في واجهة المستخدم باستخدام تخطيطات البداية والنهاية. |
التلفزيون | تزود المطورين بوظائف التصميم المتعدد الأبعاد وتصميم المواد من أجل كتابة تطبيقات للتلفزيون |
tvprovider | قدِّم قنوات Android TV. |
متجه قابل للرسم | عرض رسومات متجهية |
versionedparcelable | توفر تنسيق تسلسل ثنائي مستقر ومدمج يمكن تمريره عبر العمليات أو الاستمرار بأمان. |
جهاز العرض | عرض طرق العرض أو الأجزاء بتنسيق قابل للتمرير السريع. استخدِم viewpager2 بدلاً من ذلك، إن أمكن. |
viewpager2 | عرض طرق العرض أو الأجزاء بتنسيق قابل للتمرير السريع. |
Wear | إنشاء تطبيقات لساعات "Wear OS من Google" الذكية |
wear.compose | كتابة تطبيقات Jetpack Compose للأجهزة القابلة للارتداء من خلال توفير وظائف لتتوافق مع أجهزة قابلة للارتداء وأحجام وأشكال وإيماءات تنقل محددة. |
wear.protolayout | تتيح هذه المكتبة تحديد مجموعة من تخطيطات واجهة المستخدم والتعبيرات خارج واجهة المستخدم ليتم عرض/تقييمها على الأسطح البعيدة. |
wear.ilees | إنشاء تطبيقات لساعات "Wear OS من Google" الذكية |
wear.watchface | إنشاء تطبيقات لساعات "Wear OS من Google" الذكية |
مجموعة webkit | يمكنك العمل باستخدام واجهات برمجة تطبيقات WebView الحديثة على نظام التشغيل Android 5 والإصدارات الأحدث. |
نافذة | يساعد هذا الخيار في التوافق مع مختلف أشكال الأجهزة، مثل الأجهزة القابلة للطي. |
window.extensions.core | واجهات برمجة التطبيقات الأساسية وإضافات مكتبة مدير النوافذ |
الجديد
- إنشاء مستند لشهر آب (أغسطس) 2023
- يتحرك الإصدار Jetpack Compose 1.5.0 في وضع ثابت ويحقق تحسينات كبيرة في الأداء، ويشمل ذلك إعادة هيكلية مفاتيح التعديل عالية المستوى مثل "قابلة للنقر" والتي يمكنها تحسين وقت تركيبة التطبيق بنسبة %80. في آب (أغسطس) 2023، حقّقت ميزة Compose أيضًا تحسّنًا بنسبة تصل إلى 70% في تخصيص الذاكرة (خاصةً في حِزم الرسومات)، ما سيقلل من المساحة المستخدَمة في الذاكرة على ميزة إنشاء الرسائل على الأجهزة.
- الإصدار 1.2 من Wear Compose وTileles
- تم نقل كل من Wear Compose وWear Tiles إلى الثبات لتحسين تجربة مطوّري برامج wearOS. يتكامل كل منهما مع بعضهما البعض، حيث يمكن استخدام Wear Compose لإنشاء شاشات تطبيقات معقدة على أجهزة Wear OS، كما يمكن استخدام أقسام Wear لإنشاء مربّعات التطبيقات. يحتوي إصدار Wear Compose الجديد على وظائف جديدة مثل العناصر القابلة للتوسعة والتمرير السريع للعرض. يتيح إصدار Wear Tiles الآن استخدام الصور المتحركة في التطبيقات المصغّرة وربط بيانات النظام الأساسي (مثل مصدر البيانات الصحية).
- النافذة 1.1
- 1.1 تعمل هذه الميزة على تثبيت واجهات برمجة التطبيقات التي تتضمّن الأنشطة، ما يسمح لتطبيقات مثل WhatsApp وeBay وTemu بشحن تنسيقات الشاشة الكبيرة. توفّر واجهة برمجة التطبيقات العديد من الميزات التي تتيح للمطوّرين تعديل سلوك تقسيم الشاشة، والتحقّق (وتغيير) حالة التقسيم في وقت التشغيل، وتنفيذ عمليات التقسيم الأفقية، وبدء نموذج في نافذة كاملة.
- ملاحظات الإصدار
- للحصول على مزيد من المعلومات، يُرجى الانتقال إلى ملاحظات الإصدار.
التعرّف على كيفية استخدام Jetpack
التدريب على الأساسيات
تعلَّم مكتبات Jetpack الأساسية في دورة Android Basics (أساسيات Android) من خلال الدورة التدريبية Compose وقلِّل النصوص النموذجية في تطبيقك.
برنامج تعليمي عملي
احصل على تجربة عملية من خلال ثلاث مكتبات Jetpack تبسّط طبقة بياناتك: LiveData وViewModel وroom
نموذج تطبيق دوار الشمس
اطّلِع على طريقة استخدام مكتبات Jetpack الأكثر رواجًا معًا في تطبيق على مستوى الإنتاج.