اعتبارًا من 27 آذار (مارس) 2025، ننصحك باستخدام android-latest-release
بدلاً من aosp-main
لإنشاء AOSP والمساهمة فيه. لمزيد من المعلومات، يُرجى الاطّلاع على التغييرات في AOSP.
نظرة عامة
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
AppCard هي مجموعة من عناصر واجهة المستخدم التي يتحكّم مصنّع المعدات الأصلية في تصميمها،
ويتم ملؤها بالمعلومات التي تقدّمها التطبيقات. تعرض بطاقات AppCards البيانات والوظائف الأكثر صلة بالتطبيق للمستخدمين بطريقة يسهل الوصول إليها وتكون متاحة دائمًا.

الشكل 1. مكوّنات AppCard
يمكن للمطوّرين الخارجيين استخدام AppCards لإجراء ما يلي:
- عرض حالة طلب الطعام الجاهز لسائق أثناء توجّهه إلى المطعم
- عرض صور للركاب في المركبات لخلق أجواء ممتعة
- تتبُّع أسعار العملات المشفّرة وتعديلها بشكل دوري للمستثمرين
تشمل الأمثلة ما يلي:

الشكل 2. أمثلة على AppCard
AppCard
المصدر: AppCard.kt
AppCard هو عنصر يحتوي على بيانات. نسمح باستخدام ImageAppCard
، الذي يتضمّن حالتين. عند تحديد أي نوع من أنواع AppCard، يجب أن يكون لكل مكوّن معرّف فريد.
الشكل 3. صورة تتضمّن نصًا
|
الشكل 4 شريط التقدّم والأزرار التي تتضمّن نصًا
|
AppCard ContentProvider
المصدر: AppCardContentProvider.kt
موفّر محتوى مضمّن في تطبيق، وينشئ بطاقات AppCards، ويتم إنشاء مثيل له ويتواصل مع AppCardHost
. لمزيد من المعلومات، يمكنك الاطّلاع على AppCardContentProviderExtension.
AppCard Host
المصدر: AppCardHost.kt
تطبيق نظام يتصل بـ AppCardContentProvider
لعرض بطاقات التطبيقات وإدارتها. لمزيد من المعلومات، راجِع مقالة ضبط مضيف AppCard.
AppCard Context
المصدر: AppCardContext.kt
كائن يقدّم تلميحات إلى AppCardContentProvider
حول كيفية عرض AppCardHost
لبطاقة AppCard. يتضمّن AppCardContext
المعلومات التالية:
- مستوى واجهة برمجة التطبيقات
فترة إعادة التحميل لما يلي:
- إكمال تحديثات AppCard
- مكوّنات AppCard التي تم وضع العلامة
EnforceFastUpdateRate
عليها
هل سيسمح المضيف بالتفاعلات مع AppCard؟
الحدّ الأقصى لحجم الصورة:
- صورة الوسط
- صورة الزر
- صورة العنوان
الحدّ الأدنى لعدد الأزرار المطلوب عرضها
تتيح هذه المعلومات لمطوّري AppCard تحسين المعلومات التي يتم إرسالها إلى المضيفين.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Overview\n\nAn *AppCard* is a grouping of UI elements with styling controlled by the OEM,\nand populated with information provided by apps. AppCards display an app's most\nrelevant data and functionality to users in a way that is accessible and always\navailable.\n\n**Figure 1.** AppCard components.\n\nThird-party developers can use AppCards to:\n\n- Display the status of a takeout food order to a driver while en route.\n- Show photos to passengers in vehicles to form a pleasant ambiance.\n- Track and periodically update the price of crypto coins for investors.\n\nExamples include:\n\n**Figure 2.** AppCard examples.\n\nAppCard\n-------\n\n**Source:** [`AppCard.kt`](https://android.googlesource.com/platform/packages/apps/Car/libs/+/refs/tags/ub-automotive-master-20250418/car-app-card-lib/app-card/src/main/java/com/android/car/appcard/AppCard.kt)\n\nAn AppCard is an object that holds data. We support an `ImageAppCard`, that has\ntwo states. When defining any type of AppCard, each component must have a\nunique ID.\n\n|--------------------------------|---------------------------------------------------|\n| **Figure 3.** Image with text. | **Figure 4.** Progress bar and buttons with text. |\n\nAppCard ContentProvider\n-----------------------\n\n**Source:** [`AppCardContentProvider.kt`](https://android.googlesource.com/platform/packages/apps/Car/libs/+/refs/tags/ub-automotive-master-20250418/car-app-card-lib/app-card/src/main/java/com/android/car/appcard/AppCardContentProvider.kt)\n\nA content provider that exists in an app, creates AppCards, and is instantiated\nand communicates with `AppCardHost`. To learn more, see\n[AppCardContentProviderExtension](/docs/automotive/unbundled_apps/appcards/appcard#override).\n\nAppCard Host\n------------\n\n**Source:** [`AppCardHost.kt`](https://android.googlesource.com/platform/packages/apps/Car/libs/+/refs/tags/ub-automotive-master-20250418/car-app-card-host-lib/app-card-host/src/main/java/com/android/car/appcard/host/AppCardHost.kt)\n\nA system app that connects to `AppCardContentProvider`(s) to display and manage\nApp Cards. To learn more, see [Configure an AppCard host](/docs/automotive/unbundled_apps/appcards/host).\n\nAppCard Context\n---------------\n\n**Source:** [`AppCardContext.kt`](https://android.googlesource.com/platform/packages/apps/Car/libs/+/refs/tags/ub-automotive-master-20250418/car-app-card-lib/app-card/src/main/java/com/android/car/appcard/AppCardContext.kt)\n\nAn object that provides hints to an `AppCardContentProvider` about how an\n`AppCardHost` might display an AppCard. `AppCardContext` contains this\ninformation:\n\n- API level\n- Refresh period for:\n\n - Complete AppCard updates\n - AppCard components tagged with `EnforceFastUpdateRate`\n- Is the host to support interactions with AppCard?\n\n- Maximum image size:\n\n - Center image\n - Button image\n - Header image\n- Minimum number of buttons expected to be displayed.\n\nThis information allows AppCard developers to optimize the information sent to\nhosts."]]