تهدد Google بإزالة التطبيقات التي تحتوي على خدمات إمكانية الوصول من متجر Play

ترسل Google رسائل بريد إلكتروني تحذر المطورين من استخدام خدمات إمكانية الوصول خارج الاستخدام المقصود، وإلا ستتم إزالة تطبيقاتهم من متجر Play.

تحديث: LastPass لديه فقط استجاب إلى هذه الأخبار وينص على أنه لن يكون هناك "تأثير فوري" لتطبيقات Android الخاصة بهم. ويبقى أن نرى ما إذا كان هذا يعني أن الطلبات الأخرى ستحظى بالتساهل أم لا.

تعتمد بعض التطبيقات الأكثر ابتكارًا في متجر Play على استخدام واجهات برمجة التطبيقات (APIs) بطرق لم تقصدها Google أبدًا. هناك تطبيقات يمكنها إعادة تعيين مفاتيح مستوى الصوت لتخطي المقطوعات الموسيقية وتسجيل وتشغيل مدخلات اللمس صفحات الويب أو الألعاب، وحتى توفير مفاتيح تنقل بديلة حتى تتمكن من استخدام جهازك بالكامل شاشة. تعتمد كل هذه الأمثلة التي ذكرتها للتو على واجهات برمجة تطبيقات إمكانية الوصول لنظام Android. ولكن قد يكون ذلك قريبا التغيير، حيث يرسل فريق متجر Google Play رسائل بريد إلكتروني إلى المطورين لإخبارهم بإمكانية القيام بذلك لم تعد تنفذ خدمات إمكانية الوصول ما لم تتبع إرشادات Google.


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

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

خدمة إمكانية الوصول، والتي يشار إليها عادةً باسم a11y، هي تطبيق يمكن للنظام تغذية معلومات معينة إليه اعتمادًا على ما الأحداث تقوم خدمة الوصول بالتسجيل للاستماع إليها. يجب على التطبيق الذي يرغب في تنفيذ خدمة إمكانية الوصول إضافة ملف android.permission.BIND_ACCESSIBILITY_SERVICE إذن لملف AndroidManifest حتى يتمكن النظام فقط من الارتباط بخدمة التطبيق.

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

وبالتالي، يمكن أن تكون خدمات إمكانية الوصول قوية ومفيدة للغاية. تعتمد العديد من التطبيقات المبتكرة الأكثر شهرة على متجر Google Play على a11y لأداء واجباتها. فيما يلي بعض الأمثلة القليلة التي توصلت إليها من أعلى رأسي:

  • الإدخال التلقائي - اعتراض KeyEvents وتنفيذ إيماءات النقر/التمرير
  • مخطط الأزرار - اعتراض KeyEvents وإعادة تعيينها إلى KeyEvents أخرى
  • جرينيفاي - إسبات التطبيقات تلقائيًا عن طريق إغلاقها بالقوة قبل إيقاف تشغيل الشاشة
  • الإدخال+ - اكتشاف متى يكون تطبيق لوحة المفاتيح مفتوحًا لإظهار زر الإجراء العائم
  • لاست باس - مسح الصفحات لإدخالات اسم المستخدم/كلمة المرور (ضرورية قبل Android Oreo)
  • التبديل بسرعة - أرسل KeyEvent لزر الرجوع
  • تاسكر - اكتشاف متى تكون التطبيقات مفتوحة حتى تتمكن من تنفيذ أي إجراء يحدده المستخدم
  • نوع الآلة - قم بتسجيل جميع إدخالات النص حتى لا تفقد أي إدخال نصي أبدًا

لا يستخدم أي من هذه التطبيقات a11y بالطريقة التي قصدتها Google، وهي مساعدة المستخدمين ذوي الإعاقة. أراهن أن الغالبية العظمى من التطبيقات التي تنفذ خدمة إمكانية الوصول تفعل ذلك لوظائف خارج نطاق اختصاص Google. ولكن هذا هو جمال Android وواجهات برمجة التطبيقات مثل إمكانية الوصول - لا تضع Google عادةً قيودًا على ما يمكن للمطورين فعله وما لا يمكنهم فعله. يبدو أن هذا النهج المتراخي في استخدام خدمات إمكانية الوصول يتغير مثل Google Play يقوم فريق المتجر بإرسال رسائل بريد إلكتروني إلى المطورين لتحذيرهم من التغييرات القادمة في سياستهم بخصوص a11y.


ما الذي تفعله جوجل بالضبط؟

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

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

تم إرسال البريد الإلكتروني الكامل للمطورين

مرحبًا بالمطورين في ****،

نحن نتصل بك لأن تطبيقك، ****، الذي يحمل اسم الحزمة **** يطلب "android.permission. BIND_ACCESSIBILITY_SERVICE.' يجب استخدام التطبيقات التي تطلب خدمات إمكانية الوصول فقط لمساعدة المستخدمين ذوي الإعاقة على استخدام أجهزة وتطبيقات Android. يجب أن يتوافق تطبيقك مع متطلباتنا الأذونات سياسة ومتطلبات الإفصاح البارزة لدينا بيانات المستخدم سياسة.

الإجراء مطلوب: إذا لم تكن تفعل ذلك بالفعل، فيجب أن تشرح للمستخدمين كيفية استخدام تطبيقك لـ 'android.permission. BIND_ACCESSIBILITY_SERVICEلمساعدة المستخدمين ذوي الإعاقة على استخدام أجهزة وتطبيقات Android. قد تتم إزالة التطبيقات التي تفشل في تلبية هذا المطلب في غضون 30 يومًا من Google Play. وبدلاً من ذلك، يمكنك إزالة أي طلبات لخدمات إمكانية الوصول داخل تطبيقك. يمكنك أيضًا اختيار إلغاء نشر تطبيقك.

إذا كنت بحاجة إلى إجراء تغييرات على تطبيقاتك، فيرجى اتباع الخطوات التالية:

  • اقرأ من خلال الأذونات و بيانات المستخدم لمزيد من التفاصيل، وتأكد من أن تطبيقك يتوافق مع جميع السياسات المدرجة في سياسات برنامج المطور.
  • إذا لم تكن بحاجة إلى إذن BIND_ACCESSIBILITY_SERVICE في تطبيقك أو إذا كان الإذن يُستخدم لشيء آخر غير مساعدة المستخدمين ذوي الإعاقة على استخدام أجهزة وتطبيقات Android:
    1. قم بإزالة طلبك لهذا الإذن من بيان تطبيقك.
    2. قم بتسجيل الدخول إلى Play Console وقم بتحميل ملف APK المعدل والمتوافق مع السياسة.
  • أو، إذا كنت بحاجة إلى إذن BIND_ACCESSIBILITY_SERVICE في تطبيقك لمساعدة المستخدمين ذوي الإعاقة على استخدام أجهزة وتطبيقات Android:
    1. قم بتضمين المقتطف التالي في وصف بطاقة بيانات المتجر لتطبيقك: "يستخدم هذا التطبيق خدمات إمكانية الوصول".
    2. قم بتوفير كشف واضح للمستخدم عن هذا الاستخدام قبل مطالبة المستخدم بتمكين هذا الإذن داخل تطبيقك. يجب أن يستوفي إفصاحك كلًا من المتطلبات التالية:
      • يجب أن يتم الإفصاح عن طريق الروبوت: ملخص و الروبوت: الوصف عناصر فئة AccessibilityServiceInfo
      • يجب أن يصف الإفصاح الوظيفة التي يتيحها إذن خدمة الوصول لتطبيقك. يجب أن يتم الإعلان عن كل ميزة مستخدمة مع طلب خدمة الوصول في كشفك مع التبرير.

وبدلاً من ذلك، يمكنك اختيار إلغاء نشر التطبيق.

يتم تتبع جميع الانتهاكات. ستؤدي الانتهاكات الخطيرة أو المتكررة من أي نوع إلى إنهاء حساب المطور الخاص بك، والتحقيق والإنهاء المحتمل لحسابات Google ذات الصلة.

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

يعتبر،

فريق مراجعة Google Play

اقرأ أكثر


لماذا تقوم Google بإزالة خدمات إمكانية الوصول من متجر Play؟

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

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

تكون مثل هذه الهجمات فعالة على الغالبية العظمى من أجهزة Android. لقد قطعت Google خطوات كبيرة في منع هجمات الرسائل المتراكبة أو المحمصة (كما يمكن رؤيته في AOSP إذا كنت تبحث عن a11y)، لكن الأمور وصلت إلى النقطة التي قررت فيها Google أنه من الأفضل تقييد استخدام خدمات إمكانية الوصول تماما. فمن المنطقي، ولكن ذلك تمتص حقا لأن هذه الخطوة ستؤدي إلى إنهاء وظائف الكثير من التطبيقات المبتكرة.


ماذا يمكن للمطورين أن يفعلوا؟

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

من الممكن إعادة تصميم التطبيقات بحيث لا تستخدم خدمة إمكانية الوصول بعد الآن لبعض التطبيقات التي ذكرناها، ولكن ليس كلها. يمكن لمديري كلمات المرور مثل LastPass القيام بذلك الترحيل إلى إطار الملء التلقائي، ولكن فقط إذا كان المستخدم يعمل بنظام التشغيل Android 8.0 Oreo والإصدارات الأحدث. إذا كان أحد التطبيقات يستخدم a11y لمراقبة متى تكون التطبيقات الأخرى مفتوحة، فيمكن بدلاً من ذلك كتابة هذا التطبيق باستخدام خدمة استطلاع باستخدام واجهة برمجة تطبيقات UseStats. يمكن لتطبيقات مثل Tasker أن تنجو من مثل هذا التغيير. هناك برامج أخرى مثل Button Mapper وAutoInput لم يحالفهم الحظ - فبدون الجذر، لا توجد طريقة جيدة لاعتراض KeyEvents.

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


التحديث 1: وثائق المطور مربكة

مستندات مطور Google لـ بناء خدمة الوصول يبدو أنه يتعارض مع هذا التركيز الجديد من قبل فريق متجر Google Play. تحتوي الصفحة على الصياغة التالية في وقت كتابة هذه السطور:

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

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

شكرًا جواو دياس على تواصلك معنا بهذه المعلومات.