0Pricing
Android Academy · درس

نموذج الأذونات في Android

افهم أذونات وقت التثبيت ووقت التشغيل

نموذج الأذونات في Android درس مجاني في Android Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Android Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Android Academy 4 دروس في المجموع.

نموذج الأذونات

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

ويشكّل فهم الفئتين الأساس لتنفيذ ذلك بشكل صحيح.

التصريح في Manifest

يجب التصريح عن كل إذن يستخدمه تطبيقك في AndroidManifest.xml باستخدام وسم <uses-permission>. وينطبق ذلك على كلتا الفئتين.

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />

الأذونات العادية (وقت التثبيت)

تشكل الأذونات العادية خطرًا محدودًا على الخصوصية. ويمنحها النظام تلقائيًا وقت التثبيت، ولا يُطلب من المستخدم الموافقة.

  • INTERNET
  • ACCESS_NETWORK_STATE
  • VIBRATE

تعلن عنها، ثم تعمل مباشرةً.

الأذونات الخطرة (وقت التشغيل)

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

  • CAMERA
  • ACCESS_FINE_LOCATION
  • READ_CONTACTS
  • RECORD_AUDIO

مجموعات الأذونات

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

سبب وجود أذونات وقت التشغيل

قبل Android 6.0، كان المستخدمون يمنحون كل الأذونات وقت التثبيت أو لا يمنحون أيًا منها. وتمنح أذونات وقت التشغيل المستخدمين تحكمًا دقيقًا قابلًا للسحب، إذ لا تطلب الإذن إلا عند استخدام الميزة فعليًا.

وهذا يبني الثقة؛ لأن المستخدمين يرون الطلب في سياقه.

التحقق من منح الإذن مسبقًا

تحقق دائمًا قبل استخدام ميزة محمية. تُرجع ContextCompat.checkSelfPermission ما إذا كان الإذن ممنوحًا حاليًا.

val granted = ContextCompat.checkSelfPermission(
    context,
    Manifest.permission.CAMERA
) == PackageManager.PERMISSION_GRANTED

الأذونات الخاصة

بعض الإمكانات ليست أذونات عادية ولا خطرة قياسية؛ بل هي أذونات خاصة تتطلب من المستخدم تفعيل خيار في شاشة إعدادات نظام مخصصة، مثل "العرض فوق التطبيقات الأخرى" أو "الوصول إلى جميع الملفات".

قد تتغير الأذونات باختلاف مستوى API

يتطور تصنيف الأذونات وسلوكها. فعلى سبيل المثال، أصبح POST_NOTIFICATIONS إذنًا لوقت التشغيل على Android 13 فقط. احرص دائمًا على مراجعة الوثائق الخاصة بمستويات API التي تدعمها.

القاعدة الذهبية

لا تفترض امتلاكك لأي إذن. يكون التسلسل دائمًا كما يلي:

  1. صرّح عن الإذن في manifest
  2. تحقق منه وقت التشغيل
  3. إذا لم يكن ممنوحًا، فاطلبه
  4. تعامل مع المنح والرفض بطريقة ملائمة

أقل قدر من الصلاحيات

لا تُصرّح ولا تطلب إلا ما تحتاج إليه فعلًا. كل صلاحية إضافية خطرة تقلل ثقة المستخدم، وقد تؤدي إلى مراجعة التطبيق وفق سياسات Play Store. سنعود إلى هذا الموضوع في درس الخصوصية.

اختبار سريع

اختبر مدى فهمك لنموذج الصلاحيات.

مراجعة

لقد تعلمت نموذج الصلاحيات في Android:

  • يُصرَّح عن جميع الصلاحيات في ملف البيان
  • تُمنح الصلاحيات العادية تلقائيًا عند التثبيت
  • تتطلب الصلاحيات الخطرة موافقة صريحة أثناء التشغيل، ويمكن إبطالها
  • تحقق دائمًا قبل الاستخدام؛ فبعض الإمكانات تتطلب صلاحيات خاصة

التالي: طلب الصلاحيات في Compose.

الأسئلة الشائعة

هل درس «نموذج الأذونات في Android» مجاني؟

نعم — نص درس «نموذج الأذونات في Android» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Android Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Android Academy 4 دروس في المجموع.

ماذا ستتعلم في «نموذج الأذونات في Android»؟

افهم أذونات وقت التثبيت ووقت التشغيل تتمرن على Android Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Android Academy؟

لا تُشترط خبرة سابقة. Android Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.

كم من الوقت يستغرق درس «نموذج الأذونات في Android»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Android Academy هذا؟

نعم. كل درس في Android Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. نموذج الأذونات في Android
  2. طلب الأذونات في Compose
  3. معالجة الرفض وشرح السبب
  4. أفضل ممارسات الخصوصية
← العودة إلى Android Academy