【问题标题】:android Accessibility screen magnifierandroid 辅助功能屏幕放大镜
【发布时间】:2013-05-29 13:36:05
【问题描述】:

我想创建一个 Android 无障碍应用程序/服务。 这个辅助功能应用程序能够放大任何驻留在 android 设备上的应用程序生成的任何屏幕图像。

例如,我希望能够放大...

  1. 主屏幕
  2. 设置菜单和子菜单

我想放大文本和图像/图标等。

我在 android 开发文档中搜索了提示/提示/想法。

很遗憾,我遇到了死胡同。

这种无障碍应用程序不可能在 Android 上开发吗?

【问题讨论】:

    标签: android accessibility android-a11y


    【解决方案1】:

    Jellybean - Android 4.2 - 显然内置了此功能 - 请参阅 this release article 详细介绍 Jelly Bean 中的新功能:“辅助功能:启用屏幕放大以轻松缩放或平移整个屏幕以更仔细地查看。视障用户现在可以通过在屏幕上点按三次来输入全屏放大倍率”

    通常在移动操作系统上,这些功能内置于操作系统中,不是第 3 方可以编写的;部分是出于安全原因(放大镜可以访问其他应用程序的图形输出,因此理论上可以将包含敏感信息的屏幕截图发送回基地),部分是因为放大很复杂,因为它涉及干扰正常的视频输出以及触摸输入(触摸输入必须以与原始图形区域相反的方式缩放,以便触摸放大的按钮到正确的位置)。

    如果您准备根设备并在操作系统/驱动程序级别四处寻找,可能有一种方法可以做到这一点,但如果您想要一个可以放入商店的应用程序,那么这不会有太大帮助。

    【讨论】:

    • 是的,我已经看到了,并在我的安卓手机上尝试了“三连击”......但什么也没发生。我也了解 canRetrieveWindowContent 涵盖了有关在 AccessibilityService(?) 中访问“其他”窗口的问题
    • 只是在某种程度上; Android 确实有一个第三方可以使用的无障碍 API,但它几乎完全专注于构建屏幕阅读器类型的应用程序;无法访问图形内容-使用它的应用程序必须明确要求此功能(使用您提到的标志),并且必须在控制面板中明确启用。所以是的,这确实解决了这个安全问题,但对放大没有帮助。 (iOS 甚至没有这个功能——它内置的 VoiceOver 屏幕阅读器是那里唯一的屏幕阅读器选项。)
    • 另外,似乎放大倍数是not enabled by default - “默认情况下不启用放大选项,必须从设置>辅助功能>放大中的放大选项打开”
    猜你喜欢
    • 1970-01-01
    • 2010-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-30
    • 2023-04-07
    相关资源
    最近更新 更多