一种通过云配置处理应用权限弹框的方案

奇技 · 指南

在兼容性测试中,对于一个App进行兼容性测试,需要安装,冷启动,热启动,卸载四个步骤,在这四个步骤都正确的情况下,才确定App兼容这款手机。

在国内,Android手机的型号,品牌有很多,各个品牌厂商封装代码不同,给兼容性测试带来了很大的影响,尤其在Android6.0以后,Android为了用户安全引入权限弹框,Android8.0以后oppo,vivo等手机需要用户输入账户,密码才可以安装,为确保兼容性测试的正确执行,需要引入一种辅助处理机制,点窗助手。

该SDK是基于Google的Uiautomator开发的,所以只适用于Android系统。

本方案采用云端拉取弹框数据,动态修改代码运行参数,完美的解决了兼容性测试中弹框导致的测试失败的问题。

核心技术与架构图

云配置是在云端拉取弹框配置数据,动态固化到本地,uiautomator监听OnAccessibilityEventListener,拉取固化本地数据,进行弹框处理。架构图如下图所示:

整体方案主要分为四个部分:

1.数据更新固化机制:Android终端通过http请求,拉取云端数据,固化到本地。

2.组件比对模型:Uiautomator监听OnAccessibilityEventListener事件回调,通过判断当前的界面是否弹窗,拉取本地数据,进行和弹窗比对。

3.比对成功后的处理:比对成功后,根据操作类型,去做相对应的操作

4.异常机制预警:比对失败,或者操作失败,邮件预警。

技术优势

01 弹框匹配数据动态更新,无需停止服务

02 断网也可以处理弹框

03 组件比对速度快,弹窗定位精准

04 一个弹框,多操作

05 支持多种操作,操作结果成功率比较高

06 支持正则匹配查找

07 完美解决AccessibilityNodeInfo点击产生的问题

技术实现

1.启动心跳服务,拉取云端数据

2.数据固化

3.配置服务启动参数

4.监听UiAntomation.OnAccessibilityEventListener

5.判定弹框

6.精确比对弹框是否匹配数据

7.组件操作:

8.异常预警

效果展示

往期精彩回顾

TensorNet——基于TensorFlow的大规模稀疏特征模型分布式训练框架

CAP BASE 最终一致性

360Stack裸金属服务器部署实践

360技术公众号

技术干货|一手资讯|精彩活动

扫码关注我们

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值