Android开发人员和可访问性 - 挑战和建议的解决方案
#编程 #a11y #android #mobile

我当前的大项目是我的主题论文 - 我正在写有关Android可访问性的文章,我的目标是创建可以使用Android开发人员来创建更容易访问的应用程序的检查列表。我对这个主题感到非常兴奋,一旦准备就绪,我一定会在博客上分享结果。

论文中的主要理论主题之一是Android开发人员如何实施可访问性以及什么挑战阻止他们这样做。研究还为这些挑战提供了一些解决方案。

在这篇博客文章中,我们将首先查看Android开发人员面临的一些挑战(尽管这些挑战也很常见于其他类型的开发),然后讨论提出的解决方案。

挑战

让我们首先看一下开发人员面临的挑战。我列出了Resources section中使用的所有资源。该列表有三项有关Android开发人员,他们的可访问性知识以及他们愿意和准备开发可访问应用程序的研究。

不知道可访问性和缺乏意识

我想提到的第一个问题是,Android开发人员通常缺乏可访问性知识。缺乏熟悉度有所不同 - 对于某些人来说,这是完全不认识的,但是对于大多数人来说,它表明是了解残疾用户的确切需求的问题。 1

这一发现是我可以从自己的经验中确认的。通常,Android开发人员熟悉可访问性应该是应用程序的一部分的事实。不过,确切的实现以及为什么必须做某事尚不清楚。

忽略可访问性要求的公司

缺乏意识的另一个方面是,公司忽略了可访问性要求。 Patel等。 2 发现,在截止日期临近时,公司的领导者通常将其他事情优先于可访问性。他们通常将可访问性视为额外的成本,而不是机会。这种态度在内部政策中也可以看到,因此对于开发人员来说,通常很难找到时间追溯解决可访问性问题。

与将可访问性固定为事后想法相关的另一件事是,它可以被认为很难 - 可能导致这些可访问性问题无法解决的情况。 1

我可以再次确认这些发现 - 在整个职业生涯中,我目睹了可访问性不是公司要求的一部分的情况,这意味着没有时间或资源可以考虑可访问性。

几乎没有接触或背景可访问性

Vendome等。 3 发现,开发人员通常没有可访问性和辅助技术的曝光或背景,这会导致误解,例如,在诸如堆栈溢出之类的平台上,开发人员询问的问题。例如,他们可能会询问对讲如何读取电话号码以及如何迫使它以特定方式阅读它们。 (对于那些不熟悉对话的人:对讲用户可以通过设置来控制此问题,而开发人员不应强制使用应用程序。)

另一方面,与残疾人互动的机会被认为是更好地了解用户期望的有用方式。 2 我认为这一切都取决于这样一个事实,即与用户交谈以了解他们的期望和需求是有帮助的。这是创建好应用的关键部分。

可访问性仅与屏幕阅读器可访问性有关

可访问性的一个挑战是它主要是关于屏幕阅读器的可访问性。 Vendome等。 3 发现,堆栈溢出上讨论最多的主题(在他们收集的材料中)是屏幕读取器可访问性。

我可以从我的经验中找到该发现 - 讨论可访问性时,通常是关于屏幕阅读器的可访问性。这是一个重要的方面,但有必要记住这不是全部。考虑到可以看到或具有低视力的人的互动与认知可访问性一样重要。

信念可访问性会对应用程序的美学和可用性产生负面影响

我目睹的另一个发现是,一些开发人员(和设计师)认为,如果他们将可访问性纳入其应用或设计中,它将影响该应用程序的美学和/或可用性。 Di Gregorio等。 1 发现开发人员可能会遇到有关渐进式功能或接口的想法,因为它们可以增加应用程序的复杂性。

作为开发人员,我可以理解它的来源。尤其是作为事后想法增加的要求确实提高了复杂性 - 因此,重要的是要从一开始就包括可访问性,而构建这些界面的工作更少。

缺乏工具

最后发现是缺乏开发可访问应用程序的工具。而且,一些开发人员的情况突然突然消失了,没有任何东西可以取代它们。 2

与不同工具(或辅助技术)有关的另一件事是,开发人员通常没有这些工具的经验,这可能会导致误解并解决不是问题的问题。一个示例是关于对讲机和数字的“几乎没有接触或背景的无访问或背景”部分中描述的问题。对话处理如何显示数字,用户可以更改该数字,但是由于开发人员不知道它,因此他们试图强迫其应用程序在使用对讲时以某种方式表示数字。 3

从具有Web开发背景的移动开发人员的角度来看,我同意没有足够的工具来开发可访问的Android应用程序。在Web开发中有更多的工具可以访问,但对于Android而言,有更多的工具。情况正在发生变化,但缓慢。我还看到缺乏对辅助技术的影响以及如何导致有趣的结果。

相关和可用的信息很难找到

最后发现是很难找到相关和可用的信息。 Di Gregorio等人的一位受访者的研究指出,这不仅是关于可访问性准则的不认识,而且还无法从Internet中找到可用信息以解决这些问题。 1 Patel等。 2 也发现缺乏资源 - 尤其是用于构建可访问的组件。他们的一位研究参与者指出,可用的可访问性指南应采用更易于消化的形式,以便开发人员使用它们。

我可以完全同意。尤其是随着Android开发的发展,我经常知道该应用应该如何更易于访问该应用程序。尽管如此,很难找到有关技术实施方式的可用文章。因此,我只能想象对于具有较少可访问性背景的人来说,它会感到多么艰难和沮丧。

我们面临着许多挑战,让我们继续研究研究中提出的解决方案。这些解决方案并不能解决各个方面,而是至少一些方面。

建议的解决方案

我查看的三篇研究文章列出了两种类型的解决方案,以解决为Android构建可访问应用程序的挑战:更好的工具和教育。让我们更多地看看他们两个。

更好的开发工具

Patel等。 2 和Vendome等。 3 建议使用更好的开发工具来解决特定技术实施中的可访问性。这些工具可以与IDE和可能(从我观察到并与其他开发人员进行交谈的内容)进行集成。

我已经遵循Android开发生态系统已经有一段时间了,并且正在进行任何改进工具的过程。 Android Studio中有一些代码检查以获取基于XML的视图,但由于组成部分而缺少它们。但是,在Google I/O中,他们宣布以这些可访问性警告的形式进行撰写的预览将有所改进。 (来源:What's new in Android Accessibility

通过(正规)教育增加可访问性知识

另一个建议的解决方案是通过教育来增加可及性知识。这可以通过在非计算领域的课程中添加更多与可访问性相关的主题来实现。同样,在计算机科学和相关领域内,学习解决开发过程中的可及性问题将是有益的。 2

该解决方案已超过正规教育 - 开发人员通常会从了解有关通用设计原则以及针对性的教程和讲习班的更多信息中受益,以解决特定的可访问性主题。 2 3

从我的角度来看,在正规和非正式教育方面,我很高兴注意到以可访问性为主题的文章和讲习班的增加以及大学课程中的可访问性。当然有很多事情要做,但是方向是正确的。

但是,即使我们有许多质量文章和其他资源,也总是每个开发人员的责任了解有关该主题的更多信息。只有作为开发人员借此机会学习更多信息,任何数量的教育或材料都足够。

包起来

在这篇博客文章中,我遇到了Android开发人员在以前的研究方面面临的一些挑战。我已经讨论了缺乏意识,忽略可访问性要求的公司,几乎没有接触或背景的开发人员,可访问性,仅与屏幕阅读器可访问性有关,认为可访问性使应用程序不那么可用或美丽,缺乏工具,并且很难找到相关和可用的信息。

我还分享了一些建议的解决方案:通过正规和非正式教育更好地进行开发和增加可访问性知识。

您是否认识到工作中的这些挑战?还是您还有其他解决方案想法?

资源

  • 1 di Gregorio,M.,Di nucci,D.,Palomba,F。,&Vitiello,G。(2022)。可访问的Android应用程序的制作:实践状态的实证研究。经验软件工程,27(6),145。https://doi.org/10.1007/s10664-022-10182-x
  • 2 Patel,R.,Breton,P.,Baker,C.M.,El-Glaly,Y。N.,&Shinohara,K。(2020)。为什么无法访问软件:技术专业人员的观点和挑战。 2020 CHI人为因素的计算系统中的扩展摘要,1页。 https://doi.org/10.1145/3334480.3383103
  • 3 Vendome,C.,Solano,D.,Liã±ân,S。,&Linares-VâSquez,M。(2019)。每个人都可以使用我的应用吗?关于Android应用程序可访问性的实证研究。 2019年IEEE软件维护与进化国际会议(ICSME),第41页52。 https://doi.org/10.1109/ICSME.2019.00014