首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

京喜小程序首页无障碍优化实践

移动端 APP 访问无障碍特性,开启读屏模式设置路径: iOS:设置 -> 通用 -> 辅助功能 -> 旁白(VoiceOver) 。...:设置 -> 辅助功能 -> 无障碍 -> TalkBack(不同机型路径可能不一样) 以下是一些主要 VoiceOver 手势: 轻点:选择并朗读项目。 轻点两下:激活所选项目。... TalkBack 手势与 VoiceOver 有一些差异,后面还会提到…… WAI-ARIA WAI-ARIA 通过浏览器把信息暴露给 accessibility APIs (无障碍API),作为读屏软件信息源...轮播图 :焦点位置会跟随子元素滑动消失; iOS:焦点位置固定不变,不会随子元素滑动而消失。 价格读取差异 ? ¥259.2 由于整数部分和小数部分字体大小不同,价格文本是用多个标签实现。...aria-role='button' 读取差异 读作“描述+按钮+子元素文本描述”,需借助 aria-hidden='true' 隐藏子元素文本描述,避免信息重复朗读。 iOS:有两种情况。

1.3K31

Android Accessibility 安全性研究报告

一、 合理利用 上文提及了官方对Accessibility说明,那么如何才是对Accessibility合理利用呢?...如设计意义中所介绍,Accessibility主要是面向于身体等方面存在残疾不足用户,而TalkBack则是直接面向视力存在障碍不足用户; 2)更好地使用设备。...以360手机助手作为一个范例,用户手机即使没有ROOT,开启了360手机助手辅助功能以后,也可以方便地进行应用批量安装、更新卸载,不再需要用户繁琐地点击安装卸载按钮。...图3.9 隐藏图标代码片段 (二) 自我保护 通过系统设置包名以及事件中带有的文本信息,判断出用户是否意图在辅助功能当中关闭服务试图通过系统设置应用进行卸载,然后通过启动系统设置activity来跳转...对比官方提供该服务初衷,Accessibility其实更像是个受委屈孩子,为了更美好事情而诞生,却被“教”成了个坏孩子。

1.7K80
您找到你想要的搜索结果了吗?
是的
没有找到

简单了解下无障碍设计模式

例如,播放视频 5 秒后,播放按钮控件可能会从屏幕上淡出。 高优先级控件 避免在有高优先级功能控件上使用定时器,因为如果这些控件消失太快,用户可能不会注意到这些控件。...开发人员注释:如果控件类型和状态没有被正确读取,则可能是控件无障碍角色设置不正确,或者是一个自定义控件。网站上每个元素都应该有一个相关无障碍角色,或者通过代码为其声明一个角色。...这意味着按钮应该设置成按钮、复选框应该设置成复选框,以便将控件类型和状态正确传达给用户。如果一个元素是从一个原生 UI 元素上扩展继承,他会获得父元素角色。...构建无障碍自定义视图 仅用过 Wi-Fi 下载 正确示例 使用简短说明。 已选择通过 Wi-Fi 下载 错误示例 不要写出状态。...例如,Android “双击以选择” 功能提示用户在选择一个项目时需要点击两次。Android TalkBack 也会提醒和元素相关联任何自定义操作。

4.7K40

Appium+python自动化(九)- 定位元素工具(义结金兰两位异性兄弟)(超详解)

比如 登陆界面 分别输入正确和错误用户名密码然后点击登陆按钮看看是否能否登陆以及是否有错误提示等。 功能性或者黑盒UI测试不需要测试人员了解程序如何实现,只需要验证各种操作结果是否符合预期即可。...3、点左上角机器人按钮Devices Screenshot按钮刷新页面 ? 三、定位元素 1、移动鼠标到需要定位元素上,如搜索输入框 ?...Path,添加被测app路径 4、Devices name处添加设备名称(adb devices查看到) ?...这样打开后是不是就熟悉了,点击上方红色标记就可以操作进行定位了~~~ 二、Android手机铺助功能带有TalkBack 之前一直用是谷歌方法,但是最近发现使用talkback...功能路径: 原生系统:设置 – 辅助功能(Accessibility) – TalkBack 华为EMUI系统:设置 – 高级设置 – 辅助功能TalkBack 三、宏哥在小弟哪里遇到问题

4.6K70

ApacheCN 译文集(二)20211226 更新

八、编写 match-3 九、编写图片益智游戏 构建安 UI 自定义视图 零、前言 一、入门指南 二、实现您第一个自定义视图 三、处理事件 四、高级 2D 渲染 五、引入三维自定义视图 六、动画...、奇怪 四、安装在 UDOO 上 五、启动系统 六、探索 SELinuxFS 七、利用审计日志 八、将上下文应用于文件 九、添加服务 十、将应用置于域中 十一、标签属性 十二、掌握工具链 十三...零、前言 一、棉花糖权限 二、应用链接 三、应用自动备份 四、变化展示 五、音频、视频和相机功能 六、用于工作 七、Chrome 自定义选项卡 八、认证 应用安全基础知识 零、前言...ADT 教程 零、前言 一、安装 Eclipse、ADT 和 SDK 二、集成开发环境重要特性 三、创建新项目 四、融入多媒体元素 五、添加单选按钮、复选框、菜单和首选项 六、处理多种屏幕类型...七、使用 API 的人机交互 八、添加网络功能 Spring 即时入门 一、Spring 即时入门 意图学习手册 零、前言 一、了解 二、意图介绍 三、意图及其分类 四、移动组件和意图

2.7K20

应用和游戏无障碍开发介绍

使用这些非常棒应用程序吧,能够在和 Google Play 上发布这些应用程序,我们确实感到非常自豪! 一些开发者也已将无障碍体验提升到一个新水平,特别是满足残疾人需求。...我们已经为开发人员创建了可用于 无障碍 开发资源,您将在其中找到关于该主题简单介绍,以及链接 使用 Material Design 来支持无障碍需求 和最佳实践 开发更多无障碍应用。...结合先进计算机视觉技术和语音控制功能,芝麻开门应用允许任何人只通过控制头部移动而完全不使用手就可以使用手机平板电脑。...例如,内容标签提供有用描述,向人们解释每个交互元素含义和目的。这些标签允许屏幕阅读器(例如 TalkBack那些依赖这些服务的人正确解释特定控件功能。 ?...我们已经从在这个领域取得重大进展的人那里分享了一些成功实例,希望我们提供建议和资源链接可以帮助您应用游戏为使用者创造更好体验。

1.2K10

基础篇章:关于 React Native 之 Touchable 系列组件讲解

但如果手指再次移回范围内,按钮会被再次激活。只要视图不能滚动,你可以来回多次这样操作。确保你传入一个常量来减少内存分配。...当我们按下时候,封装视图不透明度会降低,同时会有一个底层颜色透过并被用户看到,使得视图变暗变亮。...当按下时候,封装视图不透明度会降低,但是这个过程并不会真正改变视图层级,而且我们非常容易简单添加到应用而且不会产生其他额外一些错误。...我们推荐使用以下静态方法之一来创建这个对象: TouchableNativeFeedback.SelectableBackground() - 会创建一个对象,表示主题默认对于被选中对象背景。...,表示主题默认对于被选中无边框对象背景。

2K90

基础篇章:关于 React Native 之 Touchable 系列组件讲解

但如果手指再次移回范围内,按钮会被再次激活。只要视图不能滚动,你可以来回多次这样操作。确保你传入一个常量来减少内存分配。...当我们按下时候,封装视图不透明度会降低,同时会有一个底层颜色透过并被用户看到,使得视图变暗变亮。...当按下时候,封装视图不透明度会降低,但是这个过程并不会真正改变视图层级,而且我们非常容易简单添加到应用而且不会产生其他额外一些错误。...我们推荐使用以下静态方法之一来创建这个对象: TouchableNativeFeedback.SelectableBackground() - 会创建一个对象,表示主题默认对于被选中对象背景。...,表示主题默认对于被选中无边框对象背景。

1.6K90

Android训练课程(Android Training) - 构建你第一个应用

#Button 图形用户接口(界面)是通过使用一个由视图(view)和视图集合(ViewGroup)对象组成层级结构来构建。...View对象是一些常见UI组件,比如按钮,文本框,ViewGroup对象是一些不可见视图容器,它定义了子视图如何摆放,比如在一个表格里或者一个垂直列表。...说明了 在布局中,ViewGroup对象形式如何分支,和包含其他视图对象。 在这节课,你将创建一个XML布局,它包含了一个文本区和一个按钮。...如果你使用Eclipse开发,现在你可以执行应用了,但是不会发生什么。点击 Send发送按钮开启第二个Activity,但是使用了被通过模板提供一个默认“hello world” 布局。...你随后会更改这个activity来替换显示自定义文本视图,这样如果你使用了其他IDE,不要担心应用不能通过编译。

2.1K00

机器学习为核心,DeepMind助力谷歌开发 9「Pie」今日上线

本文中,我们将介绍新版本所有新特点。 今年 5 月份,谷歌 I/O 大会宣布推出 9,而后经过数月测试,谷歌收获了大量反馈。...今日,谷歌宣布将把 9 源代码放到开源项目上(AOSP),开始在所有的谷歌 Piexl 手机上用 9。据介绍, 9 拥有的机器学习能力能让手机变得更智能、便利、个性化。...为了帮助开发和测试,谷歌添加了一个 Developer Option,可以在任何设备上模拟多个 cutout shapes。 ? 带有沉浸式内容 APP 可以使用显示切换功能在设备上全屏显示。...用户可将它添加到任何窗口视图中,这样就可以在自定义部件自定义文本中使用它。除了文本放大,放大镜部件还可以为任何视图提供放大功能。 用户安全及隐私 生物特征提示 ?...为 NFC 支付和安全交易开放移动 API Android 9 添加了 GlobalPlatform Open Mobile API 一个实现到上。

2K10

AndroidStudio 开发基础知识【翻译完成】

二十五、AndroidStudio 中应用更改使用指南 二十六、事件处理概述及示例 二十七、触控和多点触控事件处理 二十八、使用手势检测器类检测常见手势 二十九、在上实现自定义手势识别...四十六、使用浮动动作按钮和 Snackbar 四十七、使用表格布局组件创建选项卡式界面 四十八、使用回收视图和卡片视图小部件 四十九、回收视图和卡片视图教程 五十、布局编辑器示例数据教程 五十一...七十八、 HTML 和网页内容打印示例 七十九、定制文档打印指南 八十、应用链接介绍 八十一、AndroidStudio 应用链接教程 八十二、AndroidStudio 性能分析器指南...函数和 Lambdas 概述 十六、Kotlin 面向对象编程基础 十七、Kotlin 继承与子类化简介 十八、视图绑定概述 十九、了解应用和活动生命周期 二十、处理活动状态变化 二十一...五十二、使用浮动动作按钮和 Snackbar 五十三、使用表格布局组件创建选项卡式界面 五十四、使用回收视图和卡片视图小部件 五十五、回收视图和卡片视图教程 五十六、布局编辑器示例数据教程 五十七、

3.1K30

新一代银行木马SharkBot正通过Play Store传播

该恶意软件作为假冒防病毒软件通过 Google Play商店传播,它滥用系统“直接回复”功能发送回复通知与消息,其中就包含了下载假冒防病毒应用程序消息。...“ATS允许恶意软件接收要模拟事件列表,并且它们将被模拟以进行汇款”,安全审计机构NCC发布报告如此写道,“由于该功能可用于模拟触摸/点击和按钮按下,它不仅可用于自动转账,还可用于安装其他恶意应用程序组件...SharkBot允许使用以下技术之一窃取系统中银行凭证,其中大多数技术要求受害者启用可访问性权限和服务: 注入(覆盖攻击):一旦检测到官方银行应用程序已打开,SharkBot 就可以通过显示带有虚假登录网站...(网络钓鱼)网页视图来窃取凭据。...远程控制/ATS:Sharkbot 能够获得对 Android 设备完全远程控制(通过辅助功能服务)。

71710

第八夜 玛丽莲梦露

我们经常会根据数据数量,动态调整显示条目的个数。譬如一个社交应用显示好友信息。当好友数目增加减少时,需要动态增加减少显示好友条目。...可以看到,点击id为category按钮后,将启动CategoryActivity按钮。这就是我们下一步将要编写。...这个问题可以通过动态布局方式,用addView()方法,把视图元素加到视图树中。视图元素动态添加,会导致本身效率会变慢。 我将使用ListView来重复利用构图方式。...最后,再把图像化多个条目合成到ListView上。提供了ArrayAdapter类,可以综合以上功能。它可以为每个数据元素赋予相同视图格式。...未来字符串型数据按照该视图元素规定格式显示。这个布局源代码可参考链接还提供了其它一些简易布局,参考链接。我们当然可以用自己布局来替代它。

60010

React Native 系列(八) -- 导航

可以是按钮或者其他视图控件 headerLeft:设置导航条左侧。可以是按钮或者其他视图控件 headerStyle:设置导航条样式。...,需要版本大于5.0 gesturesEnabled:是否支持滑动返回手势,iOS默认支持,默认关闭 screen:对应界面名称,需要填入import...之后页面 mode:定义跳转风格 card:使用iOS和默认风格 modal:iOS独有的使屏幕从底部画出。...none:无动画 cardStyle:自定义设置跳转效果 transitionConfig: 自定义设置滑动返回配置 onTransitionStart:当转换动画即将开始时被调用功能...Navigator Navigator作用:只提供跳转功能,支持 iOS 和 android 注意:导航条需要自定义,需要导航条界面,自己添加 只要一个控件,包装成Navigator就能获取跳转功能

6K80

第八夜 玛丽莲梦露

我们经常会根据数据数量,动态调整显示条目的个数。譬如一个社交应用显示好友信息。当好友数目增加减少时,需要动态增加减少显示好友条目。...可以看到,点击id为category按钮后,将启动CategoryActivity按钮。这就是我们下一步将要编写。...这个问题可以通过动态布局方式,用addView()方法,把视图元素加到视图树中。视图元素动态添加,会导致本身效率会变慢。 我将使用ListView来重复利用构图方式。...最后,再把图像化多个条目合成到ListView上。提供了ArrayAdapter类,可以综合以上功能。它可以为每个数据元素赋予相同视图格式。...未来字符串型数据按照该视图元素规定格式显示。这个布局源代码可参考链接还提供了其它一些简易布局,参考链接。我们当然可以用自己布局来替代它。

1.9K90

使用 Cordova 构建应用流程

添加平台支持 添加平台和后续命令都需要在项目的目录任何子目录中运行, 添加 和 iOS平台 $ cordova platform add ios $ cordova platform add android...当点击按钮时,它会被触发。在这个函数中,我们调用由插件API提供 navigator.camera 全局对象。...插件可能是必要,例如,在 Cordova 和自定义本地组件之间进行通信。 针对移动保全已有的电子签名功能和运用 OCR 技术进行信息识别和影像采集功能, 需要额外开发插件。...插件 插件开发指南 本节提供如何在 Android 平台上实现本地插件代码详细信息。...如果你有一个自定义情况,你需要传递额外构建标志到 Xcode,你可以使用一个多个构建标志选项来传递这些标志到 xcodebuild。

4.2K11

无障碍功能框架:如何让残疾老龄群体更好使用微信?

,读出提前设定string,但不聚焦 全局热区宽高补齐至44dp,并提供自定义热区放大/禁用热区放大功能 ......解决方案 基于无障碍服务(AccessibilityService)开发、集成了在不开启 Talkback 情况下能展现读屏区域一个无障碍功能走查工具,无需开启 Talkback 逐个手动触摸,就能高效检查无障碍适配情况...或者是列表 “会说话” 顶层视图(满足->6 不满足->7)列表(ListView/RecycleView)顶层视图例子如下: 但是聚焦前提是 “会说话”,“会说话” 包括以下几个条件:...“不会说话”、“有子节点”) 能到这一步,说明步骤5不满足,即该节点是普通不可聚焦View。...,聚集该节点 一路闯关到这 View,就终于逃离TalkBack聚焦了 至此,关于Android微信无障碍功能开发框架讲解完毕。

1.6K41

山川湖海 - Android无障碍功能优化实践

前言 最近我们团队收到了一些用户反馈: 添加描述 有用户反馈,我们部分功能按钮在无障碍下无法正常识别。其实这已经不是我第一次看到反馈了,第一次是16年ios端收到了用户反馈,进行过一次优化。...,但是你必须 显式 去声明,如下所示: 添加描述 所以技术层面完全不是问题,我们开发者要做就是在开发中注意一些按钮或者给图片增加一些描述即可,这样就能很低成本做到适配无障碍功能。...需要注意是,如果你自定义 View 是一个 按钮 功能 ,而且没有继承自 ImageButton 或者 Button ,那么此时如果只是增加 contentDescription 标签描述,那么当view...更多关于自定义View适配,可以查看Android官方文档-让自定义视图使用起来更没有障碍,里面主要是讲了通过无障碍代理类来实现。...是谁来自山川湖海,却囿于昼夜、厨房与爱 《万能青年旅店乐队》 参考 随手记Android无障碍实践 Android无障碍适配准则 让自定义视图使用起来没有障碍 Android无障碍功能帮助 我是Petterp

70421

Toast弹窗_androidshowtoast

大家好,又见面了,我是你们朋友全栈君。 toast弹窗 ---- toast弹窗是一个常用控件,它可以便利获取上下文对象地方,进行弹窗提示。本文不追究其中原理,只研究方法。...第一个参数是当前上下文控件,getApplicationContext()获取上下文对象this获取当前对象。 第二个参数是你自己要显示文字。 第三个参数是显示时间长短。...toast.setGravity(Gravity.TOP, 0, 0); //设置顶部显示,偏移量为0 3,Toast弹窗中有图片 在弹窗中添加图片,其实本质是给弹窗视图添加一个图片视图,弹窗视图中有布局对象...,在布局对象添加图片视图。...4,自定义Toast弹窗 大概原理是这样new 一个toast类对象

2.4K10

十六年全栈开发者 Android 开发踩坑实录

开发萌新们走错路大多数都可以在项目后期通过重构修改构建流程解决,不断打磨直到单元测试完美覆盖需要所有情况也能处理一些小错误。...内置更新提醒功能在项目初始就添加的话,那么过程就还算简单,但如果拖到后期才做的话,难免会造成不少问题,其中包括:必须手动搭建自定义流程,以及用户自行尝试跳过更新。...app 现有用户可能已经通过其他 app 习惯了应用内更新功能,甚至会理所应当地认为这其实应该是移动端平台一项特点之一。但实际上,直到我亲身经历了开发,才知道原来这项功能还要开发者手动添加。...在“应用限制”里选择应用,点击“+”添加软件包名称到需要添加限制 API 密钥下即可。至于添加证书指纹,可以直接复制页面中命令后,按照网页右侧指示,只需要几分钟就可以完成。...在一些情境下,开发中 Activity 可以被看做是 app 中某块屏幕代码; 3.0 才有的 Fragments 则可以被理解子视图代码或是 app 中部分代码。

1K40
领券