Appium appium 如何屏蔽系统提示信息

dy20082250 · 2017年12月10日 · 最后由 yszj 回复于 2018年06月01日 · 8766 次阅读

在运行脚本的过程中,APP 本身会使用定位系统的功能

这个时候小米手机就弹出对话框,提示 app 在使用定位功能

即使我已经在系统权限中设置好了,还是会提示

提示对话框一旦弹出,就会中断后面的脚本动作。

向大家请教一下,这个有什么参数设置 appium 进行忽略弹出的对话框吗?

共收到 29 条回复 时间 点赞

hello? anyone?

对 dy20082250 回复

自己判断,加个兜底的检测。

对 恒温 回复

这个动作很容易处理,但是我现在发现,即使点击了确认或者拒绝,对话框消失后,脚本的事件流已经被中断了,后面的操作无论如何都无法继续。。。

对 dy20082250 回复

不应该啊,我们就是这样做的

对 恒温 回复

更让我恼火的是,小米手机不知道怎么回事儿,无论是完全关闭定位授权,或者完全授予定位权限,都会弹出这个对话框,

对 dy20082250 回复

运行时权限申请吧?

对 恒温 回复

我在 genymotion 上操作,没有对话框弹出
在 mumu 模拟器上也没有,还有 VIVo 手机真机上实验,只要完全赋权限,也不会出现这个问题

现在在小米手机上,就是绕不过去这一点了,真让我郁闷

对 dy20082250 回复

安全中心。 在安全中心里面开启相应软的定位权限即可。

对 恒温 回复

我对安卓开发本身理解很浅,在我认为,如果软件在安装的时候权限已经赋予
则在运行时的权限申请可以直接根据安装时的权限配置情况进行处理

应该是不需要二次确认的。

确实已经在安全中心,软件管理,权限中赋予了定位权限的。

你可以看我刚刚上传的图片,我真的不能理解了

没办法,已经被这个问题搞了一个下午了

在 appium 中使用 UiWatcher?

没做过,我网上查一查。

谢谢

有几种方法可以解决:

对 matt gong 回复

谢谢你的建议和提供的链接

我都会找时间去尝试的,

不过我现在最担心的问题是一旦弹出这个 popup 对话框

我的脚本的事件流就中断了,即使我手动的很及时的处理掉这个 popup
后面的填写账号和密码的动作也不能完成,真是让我很担心

不过,你提议的方法我一定会去尝试的,这也是一个很好的学习的机会
只不过我现在对小米真的是没信心了。。。。。

发现一个 testerhome 的 bug
给自己的帖子点赞,点赞数会正常加一,但是随即刷新,点赞数又会自动减去 1,是故意这样设计还是。。。
@Lihuazhang

对 dy20082250 回复

别纠结。。。

对 恒温 回复

没啥纠结的,就是偶然看见,觉得有点怪怪的

其实这个提示,我之前问过我们的开发,说是 app 里面有一些用到第三方服务的时候,他们在申请调用的。
除了 UIwatcher 以外,我可以想到最笨的方法就是,加一个大大的 while 在最外层,做永真循环,然后放一个 try 定位这个按钮,如果 try 到了这个按钮,就执行点击,如果没有,就 except 执行脚本

对 dy20082250 回复

上面我说的方法都是要在 你脚本里加相应代码的, 让代码主动监听是否有弹窗出来,有就处理,没有就不处理。

对 matt gong 回复

我明白的,正在尝试

对 cece0417 回复

可是这种现象在小米手机中一直存在,但是在 ViVo 手机和模拟器上又不存在
我可以加判断,看是否有 popup 弹出

但是总觉的是小米手机的问题,让我很不爽

遇到同样的情况,心塞塞,有没有 appium java 的方法,那个允许点不到

对 纪小莉 回复

最暴力,最彻底的方法就是 root 手机,然后关闭或者卸载系统中的安全控制软件,这样的话系统不会再弹出各种警告信息了

仅楼主可见
对 我去催饭 回复

我觉他们就是故意的

现在各种 root 工具在最新版本的小米和 Vivo 上都不起效果

很难获取 root 权限,结果就是自动化做起来非常困难

很好解决啊。。。。。。 我自动化测试 30 几个 apk,各种弹窗毫无压力。出个弹窗就自动把它点掉。

对 周强 回复

怎么自动点掉呢!
是监控什么方法!
appium 有监控机制吗!

对 周强 回复

怎么自动点?

你好,即使点击了确认或者拒绝,对话框消失后,脚本的事件流已经被中断了,后面的操作无论如何都无法继续,,我也遇到了这个问题,请问怎么解决?你解决了吗?

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册。