<Recipientr>

بناء الجملة:
<receiver android:directBootAware=["true" | "false"]
          android:enabled=["true" | "false"]
          android:exported=["true" | "false"]
          android:icon="drawable resource"
          android:label="string resource"
          android:name="string"
          android:permission="string"
          android:process="string" >
    ...
</receiver>
الواردة في:
<application>
يمكن أن يحتوي على:
<intent-filter>
<meta-data>
description:
يذكر جهاز استقبال البث، BroadcastReceiver الفئة الفرعية، كأحد مكونات التطبيق. تفعيل أجهزة استقبال البث التطبيقات لتلقي الأهداف التي بثها النظام أو عن طريق التطبيقات، حتى في حالة عدم تشغيل المكونات الأخرى للتطبيق.

هناك طريقتان لإعلام النظام بجهاز استقبال البث. الأول هو تعريفه في ملف البيان باستخدام هذا العنصر. والآخر هو إنشاء جهاز الاستقبال ديناميكيًا في رمز برمجي وتسجيله Context.registerReceiver() أو أحد إصداراته المحملة بشكل زائد.

لمزيد من المعلومات عن طريقة الإنشاء الديناميكي لأجهزة الاستقبال، يُرجى الاطّلاع على صف واحد (BroadcastReceiver) الوصف.

إذا كان هذا المُستلِم يتعامل مع عمليات بث غير تابعة للنظام، حدِّد قيمة للحقل "android:exported". اضبط هذه القيمة على "true" إذا أردت أن يتمكّن المُستلِم من أجهزة الاستقبال من تطبيقات أخرى أو "false" إذا كنت تريد أن يتمكن المتلقي من تلقي عمليات بث من تطبيقك.

لن تضطر إلى إزالة السمة android:permission إذا قد أعلنت عنه بالفعل.

تحذير: يجب تحديد عدد مرات البث أجهزة الاستقبال التي تحدّدها في تطبيقك. يمكن أن يؤدي وجود عدد كبير جدًا من مستقبلات البث تؤثر في أداء تطبيقك وعمر بطارية المستخدمين الأجهزة. لمزيد من المعلومات حول واجهات برمجة التطبيقات، يمكنك استخدام بدلاً من صف واحد (BroadcastReceiver) لجدولة العمل في الخلفية، يُرجى الاطّلاع على تحسين الخلفية:

:
android:directBootAware

سواء كان مستقبل البث مع العلم بدء التشغيل المباشر، سيتم هو، ما إذا كان يمكن تشغيله قبل أن يفتح المستخدم قفل الجهاز.

ملاحظة: خلال التشغيل المباشر، بث يمكن للمستلم في تطبيقك الدخول فقط إلى البيانات المخزنة في حماية الجهاز

القيمة التلقائية هي "false".

android:enabled
ما إذا كان بإمكان النظام إنشاء مثيل لجهاز استقبال البث. من المهم "true" إذا كان ذلك ممكنًا، و"false" إذا لم يكن ممكنًا. القيمة التلقائية "true".

العنصر <application> له خاصية سمة enabled التي تنطبق على الكل مكونات التطبيق، بما في ذلك أجهزة استقبال البث. تشير رسالة الأشكال البيانية <application> و يجب أن تكون سمتا <receiver> "true" من أجل تمكين مستقبل البث. إذا كانت قيمة أي منهما هي "false"، تكون غير مفعّل ولا يمكن إنشاء مثيل له.

android:exported
ما إذا كان بإمكان مستقبل البث استلام رسائل من مصادر غير النظام خارج نطاق تطبيقها. تبلغ درجة الحرارة "true" إذا أمكن، و"false". إن لم يكن كذلك. إذا كانت "false"، هي الرسائل الوحيدة التي المستلمة هي تلك التي يرسلها النظام أو مكونات التطبيق نفسه أو التطبيقات برقم تعريف المستخدم نفسه.

في حال عدم تحديد القيمة، ستعتمد القيمة التلقائية على ما إذا كان مستقبل البث يتضمّن intent. والفلاتر. إذا كان المُستلِم يحتوي على فلتر أهداف واحد على الأقل، فإن القيمة التلقائية هي "true" وبخلاف ذلك، تكون القيمة التلقائية هي "false".

هذه السمة ليست الطريقة الوحيدة لتقييد التعرّض الخارجي لاستقبال البث. يمكنك أيضًا استخدام إذن لتقييد الكيانات الخارجية التي يمكنها إرسال الرسائل. اطّلِع على السمة permission.

android:icon
رمز يمثّل جهاز استقبال البث تم ضبط هذه السمة. كمرجع لمورد قابل للرسم يحتوي على تعريف الصورة. إذا لم يتم ضبطه، يتم استخدام الرمز المحدّد للتطبيق بالكامل بدلاً من ذلك. يمكنك الاطّلاع على <application>. السمة icon للعنصر.

رمز مستلم البث، سواء تم تعيينه هنا أو بواسطة عنصر <application>، هو أيضًا الرمز التلقائي لكل فلاتر الأهداف لدى المستلِم. يمكنك الاطّلاع على عنصر <intent-filter> السمة icon.

android:label
تصنيف سهل القراءة للمستخدم لمستقبِل البث وإذا لم تكن هذه السمة المجموعة، يتم تعيين التصنيف للتطبيق ككل استخدامه بدلاً من ذلك. إليك العنصر <application> السمة label.

تصنيف مستلم البث، سواء تم ضبطه هنا أو بواسطة عنصر <application>، هو أيضًا تصنيف تلقائي لجميع فلاتر الأهداف لدى المُستلِم. يمكنك الاطّلاع على عنصر <intent-filter> السمة label.

يتم تعيين التسمية كمرجع لمورد السلسلة، بحيث يمكن ترجمتها مثل السلاسل الأخرى في واجهة المستخدم. ومع ذلك، ولتسهيل الأمر أثناء تطوير التطبيق، ويمكن أيضًا ضبطه كسلسلة أولية.

android:name
اسم الفئة التي تنفذ مستقبل البث، وهو فئة فرعية من BroadcastReceiver هذا فريق مؤهل بالكامل اسم الفئة، مثل "com.example.project.ReportReceiver". ومع ذلك، كاختصار، إذا كان الحرف الأول من الاسم نقطة، على سبيل المثال، ".ReportReceiver"، سيتم إلحاقه باسم الحزمة المحدّد في العنصر <manifest>.

بعد نشر التطبيق، لا تغيير هذا الاسم، ما لم يتم ضبط android:exported="false".

لا يوجد إعداد افتراضي. يجب تحديد الاسم.

android:permission
اسم الإذن الذي تحتاجه جهات البث لإرسال إلى مستقبل البث. إذا لم يتم ضبط هذه السمة، سيتم منح الإذن الذي تحدّده السمة عنصر <application> تنطبق السمة permission إلى مستقبل البث. إذا لم يتم تعيين أي من السمتين، فإن المستلِم غير محمي بإذن.

لمزيد من المعلومات حول الأذونات، يمكنك الاطّلاع على الأذونات في نظرة عامة على بيان التطبيق نصائح الأمان:

android:process
اسم العملية التي يتم فيها تشغيل جهاز استقبال البث. عادةً، تعمل جميع مكونات التطبيق في العملية الافتراضية التي يتم إنشاؤها للتطبيق. تحمل نفس اسم حزمة التطبيق.

تشير رسالة الأشكال البيانية عنصر <application> يمكن للسمة process ضبط قيمة مختلفة افتراضيًا لجميع المكونات. ولكن يمكن لكل مكون إلغاء الإعداد الافتراضي مع سمة process الخاصة بها، ما يتيح لك نشر تطبيقها عبر عمليات متعددة.

إذا كان الاسم المعيّن لهذه السمة يبدأ بنقطتين (:)، تكون قيمة عملية خاصة بالتطبيق، عند الحاجة، يعمل مستقبل البث في هذه العملية.

إذا كان اسم العملية يبدأ بحرف صغير، يبدأ المُستلِم في عملية عمومية بهذا الاسم، بشرط أن يكون لديه إذن بالقيام بذلك. وهذا يتيح للمكونات في التطبيقات المختلفة مشاركة عملية، مما يقلل استخدام الموارد.

تم تقديمها في:
المستوى 1 من واجهة برمجة التطبيقات