SD Maid 2/SE
العربية

قد تكون هذه الترجمة قديمة. اقرأ النسخة الإنجليزية

إعداد SD Maid SE

معلومات حول خطوات الإعداد المختلفة في SD Maid SE.

يتكيّف SD Maid مع مستوى الوصول المتاح. مع أن جميع الأذونات اختيارية، فإن معظم الميزات لن تعمل إذا لم تمنح أي أذونات. يعمل SD Maid بأفضل أداء عند إكمال جميع عناصر الإعداد.

سيحاول SD Maid إكمال بعض خطوات الإعداد تلقائيًا إذا كانت صلاحية الجذر أو وصول ADB متاحة.

بعض الأذونات متداخلة أو يشمل بعضها بعضًا، فمثلًا يمكنك منح SD Maid صلاحية الجذر ووصول ADB معًا. سيحاول SD Maid دائمًا استخدام أفضل طريقة وصول ممكنة لأي إجراء، وإذا فشلت، يعيد المحاولة بثاني أفضل طريقة ثم بالثالثة وهكذا. منح SD Maid أذونات متداخلة يحسّن الموثوقية.

تلميح: تتضمن بعض خطوات الإعداد أدناه تشغيل أوامر ADB. إذا لم يكن ADB مُعدًّا على حاسوبك، يمكنك استخدام Web ADB Helper لتشغيلها مباشرةً من متصفحك.

إدارة التخزين

إذن “إدارة التخزين” إذن واسع النطاق للوصول إلى التخزين.

بيانات الاستخدام

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

إطار الوصول إلى التخزين

يستخدم SD Maid إطار الوصول إلى التخزين في Android ‏(SAF) للحصول على وصول إلى مناطق تخزين إضافية. سيطلب منك SD Maid منح الوصول إلى مسارات محددة لا يمكن الوصول إليها بمجرد امتلاك إذن “إدارة التخزين” (Just Android Things™️).

كرر هذه العملية حتى تصبح جميع المسارات خضراء.

SAF: استكشاف الأخطاء وإصلاحها

لتلك الحالات التي لا تسير فيها الأمور كما هو مخطط.

SAF: الوصول إلى Android/data|obb

منح الوصول إلى Android/data|obb غير ممكن مع الإصدارات الأحدث من تطبيق Files (الملفات) التابع للنظام (com.google.android.documentsui) على Android 11 وAndroid 12. إذا كان تطبيق Files المثبت يستهدف Android 14 (مستوى API ‏34) أو أحدث، فسيُخفي SD Maid طلب الوصول عبر SAF لهذه المسارات (كما هو الحال على Android 13 والإصدارات الأحدث).

يحدّث Google Play تطبيق Files عبر خدمة Google Play system update (تحديث نظام Google Play). يسمح تطبيق “Files” الأصلي (المبني لمستوى API ‏31، مثل aml_doc_310851020 (310851020)) الذي جاء مع نظام Android 12 لـ SD Maid بفتح نافذة اختيار مسار SAF على Android/Data، بينما يمنع أحدث إصدار من تطبيق “Files” (المبني لمستوى API ‏34 أو أحدث، مثل 14-10492947 (340916000)) ذلك.

الحل البديل:

يمكنك إلغاء تثبيت تحديث تطبيق Files ثم إعداد SD Maid. تحديث تطبيق Files مجددًا لن يُفسد الأذونات الممنوحة بالفعل.

أو

يمكنك أيضًا تشغيل هذا الأمر باستخدام Web ADB Helper.

adb uninstall com.google.android.documentsui

SAF: الخطأ OPEN_DOCUMENT_TREE ActivityNotFoundException

يتطلب منح الوصول إلى المسارات عبر إطار الوصول إلى التخزين تطبيقًا يتيح للمستخدم تأكيد المسارات التي سيُمنح الوصول إليها. هذا التطبيق هو تطبيق “Documents” (المستندات). وهو تطبيق نظام مدمج في كل جهاز Android منذ Android 5.0 (com.android.documentsui أو com.google.android.documentsui). إذا ظهر لك هذا الخطأ، فإما أن أحدهم حذف هذا التطبيق أو عطّله. في معظم الحالات، شغّل أحدهم أداة “إزالة تطبيقات مدمجة” (de-bloating) مفرطة الحماس عطّلته. يمكنك إعادة تفعيله عبر ADB:

يمكنك أيضًا تشغيل هذه الأوامر باستخدام Web ADB Helper.

adb shell pm enable com.android.documentsui
or
adb shell pm enable com.google.android.documentsui

SAF: نافذة فارغة

إذا كانت النافذة المستخدمة لمنح الوصول إلى المسارات فارغة، فربما تكون حزمة موفّر التخزين الخارجي (com.android.externalstorage) معطّلة (على الأرجح بسبب أداة “إزالة تطبيقات مدمجة” مفرطة الحماس). يمكنك إعادة تفعيلها عبر ADB:

يمكنك أيضًا تشغيل هذا الأمر باستخدام Web ADB Helper.

adb shell pm enable com.android.externalstorage

تشغيل Google Play system update (تحديث نظام Google Play) مجددًا سيستعيد التحديث. يمكنك أيضًا تنزيل إصدار محدّث يدويًا من APKMirror.com.

الإشعارات

دون هذا الإذن لن يتمكن SD Maid من نشر الإشعارات. على بعض أنظمة ROM قد يؤثر ذلك سلبًا في الموثوقية عند التنفيذ في الخلفية.

مخزون التطبيق

يتطلب SD Maid الإذن QUERY_ALL_PACKAGES للتحقق من التطبيقات المثبتة على جهازك (أي “رؤية قائمة التطبيقات المثبتة”). راجع أيضًا “إذن بيانات الاستخدام”

الإذن QUERY_ALL_PACKAGES إلزامي لـ:

يوجد هذا الإذن منذ Android 11 ويُمنح عادةً افتراضيًا. منذ Android 14 توجد بعض الأجهزة (مثل #1015 و#1354) التي لا يُمنح فيها هذا الإذن افتراضيًا أو يمكن سحبه.

قائمة تطبيقات غير صالحة

على بعض الأجهزة يكون إذن “قائمة التطبيقات” (QUERY_ALL_PACKAGES / GET_INSTALLED_APPS) ممنوحًا، لكن النظام يظل يُرجع قائمة غير مكتملة بالتطبيقات المثبتة، مثل قائمة تفتقد حزم النظام الأساسية مثل android. عندما يكتشف SD Maid ذلك، فإنه يعرض تحذير “مخزون التطبيق غير صالح” وملاحظة “قيود الجهاز المحتملة” في بطاقة الإعداد بدلًا من المتابعة.

يتوقف SD Maid هنا عن قصد: إذا لم يتمكن من رؤية القائمة الكاملة للتطبيقات المثبتة، فلن يستطيع أن يحدد بشكل موثوق الملفات التي تخص تطبيقًا لا يزال مثبتًا. المتابعة رغم ذلك قد تعني حذف بيانات تخص تطبيقًا لم يتمكن SD Maid من رؤيته ببساطة، لذا تبقى الميزات المتعلقة بالتطبيقات معطّلة حتى تتوفر قائمة كاملة.

ما يمكنك تجربته:

إذا كان إذن “قائمة التطبيقات” مسموحًا بالفعل وظلت القائمة تُعتبر غير صالحة، فهذا عادةً قيد في الجهاز وليس شيئًا يمكنك إصلاحه: بعض الأنظمة (مثل HarmonyOS، أو إصدارات Android المعدّلة بشدة) لا تسلّم أبدًا قائمة تطبيقات كاملة لتطبيقات الجهات الخارجية. راجع #2441 كمثال.

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

خدمة إمكانية الوصول

تتيح خدمة إمكانية الوصول لـ SD Maid التفاعل مع جهازك كما يفعل الإنسان، أي رؤية الشاشة والضغط على الأزرار. يمكن لـ SD Maid استخدامها لأتمتة الإجراءات المملة مثل الضغط على “محو ذاكرة التخزين المؤقت” في مئات التطبيقات. خدمة إمكانية الوصول خدمة لا يستطيع التطبيق نفسه تشغيلها، بل يجب أن يشغّلها النظام، لأن هذا النوع من الخدمات يمنح التطبيق وصولًا إضافيًا إلى جهازك.

ACS: استكشاف الأخطاء وإصلاحها

قد تتوقف الخدمة عن العمل وتتطلب منك تفعيلها مجددًا في ظروف مختلفة:

ACS: الخدمة معطّلة

تشتهر بعض أنظمة ROM (مثل MIUI) بإيقاف كل ما لم تُدرجه الشركة المصنّعة للجهاز في القائمة البيضاء بشكل عدواني. إذا كان يُطلب منك باستمرار إعادة تفعيل خدمة إمكانية الوصول، فقد يكون النظام يعطّلها في كل مرة لا يكون فيها SD Maid قيد الاستخدام الفعلي.

حاول تعطيل تحسينات البطارية، وفي أنظمة MIUI يوجد إعداد إضافي يُسمّى “Autostart” (التشغيل التلقائي)، فعّله لـ SD Maid. لأجهزة Xiaomi/POCO/Redmi:

يمكنك أيضًا التفكير في منح إذن إضافي يسمح لـ SD Maid بإعادة تشغيل الخدمة تلقائيًا.

ACS: الحظر من Phone Manager ‏(OnePlus وOPPO وRealme)

على OxygenOS وColorOS، يمكن لتطبيق “Phone Manager” (مدير الهاتف) المثبت مسبقًا أن يوقف خدمة إمكانية الوصول من تلقاء نفسه، عادةً خلال ثانية من انتهاء عملية التنظيف. يكون مفتاح إمكانية الوصول في Android متوقفًا فعلًا بعد ذلك، لذا يبدو الأمر كأن SD Maid توقف عن العمل في منتصف التشغيل.

أوقف الميزة من Phone Manager>Utilities>Block suspicious app activities (مدير الهاتف > الأدوات > حظر أنشطة التطبيقات المشبوهة).

تحتفظ الشاشة نفسها بقائمة لما حظرته. العناصر المعنونة بـ “Abnormal device control” (تحكم غير طبيعي في الجهاز) والتي تتطابق أوقاتها مع عمليات التنظيف التي شغّلتها تؤكد أن هذا هو السبب. المفتاح “Blocking alerts” (تنبيهات الحظر) المجاور لها لا يتحكم إلا في ما إذا كنت ستتلقى إشعارًا، لذا عند إيقاف التنبيهات يحدث هذا بصمت.

ACS: التفعيل عبر ADB

إذا لم يكن في جهازك طريقة لتفعيل خدمات إمكانية الوصول عبر الشاشة (مثل أجهزة التلفاز)، فمن الممكن تفعيل الخدمة باستخدام ADB بتشغيل:

يمكنك أيضًا تشغيل هذا الأمر باستخدام Web ADB Helper.

adb shell settings put secure enabled_accessibility_services eu.darken.sdmse/.automation.core.AutomationService

ACS: إعادة تشغيل الخدمة تلقائيًا

ملاحظة: هذه تقنية متقدمة وموجهة للمستخدمين المتقدمين.

يمكنك منح إذن إضافي يتيح لـ SD Maid إعادة تشغيل الخدمة بنفسه. يُسمّى الإذن WRITE_SECURE_SETTINGS ولا يمكن منحه إلا عبر ADB. إذا كان ذلك مُعدًّا لديك، فشغّل هذا الأمر لمنح الإذن:

يمكنك أيضًا تشغيل هذا الأمر باستخدام Web ADB Helper.

adb shell pm grant eu.darken.sdmse android.permission.WRITE_SECURE_SETTINGS

بعد منح هذا الإذن، يمكن لـ SD Maid استخدام الأمر الموضح هنا لتفعيل الخدمة عند الحاجة. لن يستخدم SD Maid ذلك إلا إذا كنت قد فعّلت خدمة إمكانية الوصول يدويًا مرة واحدة على الأقل. إذا دخلت إلى الإعداد مجددًا وطلبت من SD Maid عدم استخدام خدمة إمكانية الوصول، فلن تُستخدم تقنية إعادة التشغيل التلقائي هذه حتى تفعّل خدمة إمكانية الوصول يدويًا مرة أخرى.

لإزالة هذا الإذن من SD Maid مجددًا، استخدم هذا الأمر:

يمكنك أيضًا تشغيل هذا الأمر باستخدام Web ADB Helper.

adb shell pm revoke eu.darken.sdmse android.permission.WRITE_SECURE_SETTINGS

إذا ظهر لك Operation not allowed: java.lang.SecurityException، فانظر هنا. بعض الأجهزة تقيّد أذونات ADB. تحقق مما إذا كان هناك إعداد إضافي (مثل Disable Permission Monitoring) في إعدادات المطوّرين يجب تبديله، وبعد استخدام الأمر يمكنك تعطيله مجددًا.

ACS: الحماية المتقدمة

على Android 17 والإصدارات الأحدث، يمنع وضع الحماية المتقدمة (Advanced Protection) من Google التطبيقاتِ التي ليست أدوات مخصصة لإمكانية الوصول (قارئات الشاشة، والوصول عبر مفتاح التبديل، وغيرها) من استخدام خدمة إمكانية الوصول. SD Maid أداة صيانة وتنظيف، لذا لا يمكن تفعيل خدمة إمكانية الوصول الخاصة به ما دامت الحماية المتقدمة مفعّلة، إذ يرفض Android الخدمة على مستوى النظام، حتى لو حاولت منحها عبر صلاحية الجذر أو وصول ADB.

لا يستطيع SD Maid إعفاء نفسه من ذلك: فالتطبيقات التي تصنّفها Google كأدوات لإمكانية الوصول هي وحدها المؤهلة، وأدوات التنظيف مستبعدة صراحةً.

لديك خياران:

ACS: قيود AppOps

قد يطبّق Android 13 والإصدارات الأحدث قيودًا إضافية على التطبيقات المثبتة من خارج المتاجر (side-loaded). لذا إذا لم يكن SD Maid مثبتًا من مصدر معروف (لدى Google) مثل Google Play أو متاجر التطبيقات الأخرى، فقد لا تتمكن من منح بعض الأذونات لـ SD Maid مباشرةً، مثل تشغيل خدمة إمكانية الوصول.

OxygenOS 15 - OnePlus

نسيت OnePlus (أو لم ترغب ببساطة في) تضمين إجراء Allow restricted settings (السماح بالإعدادات المقيدة) في إعدادات التطبيق في OxygenOS 15. إذا لم تكن تثبّت التطبيق عبر Google Play، فيجب على أداة التثبيت تعيين العلامة INSTALL_ALL_WHITELIST_RESTRICTED_PERMISSIONS. إذا كان Shizuku مُعدًّا لديك، فيمكنك استخدام تطبيق “Install with Options”.

أنظمة ROM الأخرى

لرفع هذه القيود، افتح شاشة إعدادات تطبيق SD Maid في النظام. افتح القائمة في الزاوية العلوية اليمنى واختر Allow restricted settings (السماح بالإعدادات المقيدة)، وبعد ذلك يمكنك العودة إلى قائمة خدمات إمكانية الوصول وتفعيل خدمة SD Maid.

ملاحظة: لتحسين سهولة الاستخدام (هذا سخرية)، قررت Google أن هذا الإعداد لن يكون مرئيًا إلا إذا:

😮‍💨

يمكن العثور هنا على بعض المعلومات الإضافية حول الخلفية.

صلاحيّة الجذر

مع صلاحية الجذر (root)، يحصل SD Maid على وصول كامل إلى جهازك ويمكنه إجراء أشمل فحص ممكن. يعني هذا عادةً أنك فتحت قفل محمّل الإقلاع (bootloader) وأعددت Magisk.

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

وصول ADB

يتيح وصول ADB لـ SD Maid استخدام واجهة التصحيح في Android ‏(ADB) لتنفيذ عمليات بصلاحيات مرتفعة. يحتاج إلى تطبيق منفصل يشغّل خدمة ADB على جهازك ويمنح التطبيقات الأخرى الوصول إليها: Porter أو Shizuku. إنه تعديل يمكنك إجراؤه على هاتفك وتستفيد منه التطبيقات الأخرى.

إنه مشابه للجذر، لكنه ليس مثله. الأذونات أقل قوة بقليل، لكن التعديل ليس دائمًا ولا يتطلب فتح قفل محمّل الإقلاع.

Porter

Porter هو النسخة المتفرعة (fork) من Shizuku التي أتولى صيانتها، مع دعم اختياري لصلاحية الجذر. يشرح موقعه الإلكتروني كيفية تثبيته وتشغيله. على Android 11 والإصدارات الأحدث، يتيح لك تصحيح الأخطاء اللاسلكي تشغيله دون حاسوب.

إذا كنت تُعدّ وصول ADB لأول مرة، فاستخدم Porter. توجّهك إصدارات SD Maid من GitHub وF-Droid إلى Porter عندما لا يكون أي تطبيق لوصول ADB مثبتًا. أما إصدار Google Play فيوجّهك إلى Shizuku على Google Play، لكنه يعمل مع Porter بالطريقة نفسها.

إذا كان Porter وShizuku مثبتين معًا، يستخدم SD Maid تطبيق Porter. تقول بطاقة الإعداد حينها Porter is installed, so SD Maid waits for Porter instead of Shizuku (Porter مثبت، لذا ينتظر SD Maid تطبيق Porter بدلًا من Shizuku). شغّل Porter للمتابعة، أو ألغِ تثبيته إذا كنت تريد أن يستخدم SD Maid تطبيق Shizuku.

استخدام Shizuku

يوجد إصداران من Shizuku:

لا يمكن تثبيتهما في الوقت نفسه. إذا كان الإصدار الأصلي يعمل لديك بالفعل، فلا داعي للانتقال.

منح الوصول

بعد إعداد Porter أو Shizuku:

إعداد وصول ADB، إذا كنت قد منحت SD Maid صلاحية الجذر بالفعل، لا يفعّل ميزات إضافية، لكنه يحسّن الموثوقية. إذا فشلت الإجراءات بصلاحية الجذر، فسيعيد SD Maid المحاولة باستخدام وصول ADB.

وصول ADB: استكشاف الأخطاء وإصلاحها

يمكنك التحقق من حالة وصول ADB في SD Maid بالانتقال إلى الإعدادات > الإعداد وعرض بطاقة الإعداد وصول ADB. يجب أن تقول يمكن لـ SD Maid الآن استخدام وصول ADB عبر Porter (أو عبر Shizuku).

Shizuku لا يتصل أبدًا

تقول البطاقة فشل وصول ADB وShizuku is running, but it never connected SD Maid to its helper service. (يعمل Shizuku، لكنه لم يربط SD Maid بخدمته المساعدة أبدًا). كانت الإصدارات الأقدم تقول Waiting for link with Shizuku (بانتظار الارتباط بـ Shizuku) أو Shizuku link failed (فشل الارتباط بـ Shizuku).

افتح تطبيق Shizuku. إذا قال إنه يعمل وكان SD Maid في قائمة التطبيقات المصرّح لها، فإن Shizuku مُعدّ بشكل سليم ولن تفيد إعادة إعداده. ما يفشل هو الخدمة المساعدة في Shizuku: فهي تتوقف عند بدء التشغيل قبل أن تتمكن من الرد، ويستسلم SD Maid بعد نحو 15 ثانية. يُجري إعادة محاولة الفحص نفسه ويفشل بالطريقة نفسها.

هذا خطأ في Shizuku ‏(RikkaApps/Shizuku#1198)، وليس في SD Maid، ويُعطّل أي تطبيق يستخدم الخدمة المساعدة في Shizuku. يؤثر في أجهزة MediaTek، والأجهزة التي تعمل بنظام HyperOS أو MIUI.

تفيد التقارير بأن النسخة المتفرعة من thedjchi تُصلحه. للانتقال: