首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >辅助功能:适用于iPhone / iOS的辅助应用程序

辅助功能:适用于iPhone / iOS的辅助应用程序
EN

Stack Overflow用户
提问于 2011-12-05 01:02:34
回答 3查看 295关注 0票数 2

是否有可能为iPhone构建与VoiceOver工作方式相同的辅助应用程序?(使用UIAccessibility应用程序接口)-为了澄清,我们想要构建一个与VoiceOver相同的屏幕阅读器。或者,VoiceOver是唯一允许在iOS设备上工作的辅助技术吗?

EN

回答 3

Stack Overflow用户

发布于 2011-12-05 14:35:16

是的,您可以在自己的应用程序中构建自己的屏幕阅读器技术。

你应该包括你自己的语音合成库,比如CMU FLite,它听起来可能不如VoiceOver,并且对你想要支持你的私人辅助行为的所有应用程序的UI和文本对象进行子类化或添加类别。

在iOS应用商店中有一小部分通话应用,它们在应用程序的一些视图中提供一些有限的自定义语音帮助,而不需要打开VoiceOver。(广告:我的语音调谐器就是一个例子。)

你的辅助技术只能在你自己的应用程序中工作,不能像Siri和VoiceOver那样与物理按钮或任何其他应用程序交互。

票数 1
EN

Stack Overflow用户

发布于 2011-12-08 04:05:40

VoiceOver目前是iOS上唯一的辅助技术应用,我怀疑苹果将继续保持这一地位。让屏幕阅读器成为整个软件包的一部分,而不是允许第三方应用程序,有很多好处,包括:

  • 根据定义,屏幕阅读器需要能够访问其他应用程序的UI和内容。这里有一大堆安全和隐私问题。虽然有一些方法可以缓解这种情况-例如。安卓要求辅助技术在控制面板上得到专门的许可--如果不需要,为什么还要去那里呢?
  • VoiceOver做的一些事情-比如拦截触摸-可能需要特殊的系统支持;再说一次,这不是你通常想让任何应用程序做的事情。有一种感觉,屏幕阅读器是应用程序的一个特例,在这种情况下,如果屏幕阅读器需要操作系统的特殊支持,而不是需要通过一些应用程序接口将支持扩展到第三方,那么处理这些情况要容易得多,而且需要以某种方式保护应用程序接口,防止滥用(参见上文),并且在未来的操作系统releases.
  • Having中必须记录和支持该应用程序。这极大地简化了开发人员的工作。在iOS上,使用VoiceOver进行测试,就完成了。相比之下,在Windows上,您可能需要测试JAWS、NVDA,也可能需要测试WindowsEyes。其中一些应用程序做了其他应用程序做不到的事情,所以你的应用程序可能需要解决其中一个问题。
  • 将屏幕阅读器作为软件包的一部分,这也意味着它可以直接与操作系统发布的新功能一起使用。苹果可以保证新的iOS功能从第一天起就可以使用。要使用第三方辅助软件来实现这一点,他们必须让第三方参与新的操作系统功能,这对于像苹果这样神秘的公司来说是不太可能的。
票数 1
EN

Stack Overflow用户

发布于 2011-12-05 01:26:59

不幸的是,VoiceOver是目前唯一允许的辅助技术。如果您需要使用VoiceOver,则非常简单;您所要做的就是为您希望用户识别的每个项目添加下面这行代码:

代码语言:javascript
运行
复制
[myView setIsAccessibilityElement:YES];
[myView setAccessibilityTraits:UIAccessibilityTraitImage];
[myView setAccessibilityLabel:NSLocalizedString(@"Image of dog", nil)];
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8376948

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档