zoukankan      html  css  js  c++  java
  • poco不断重启?看这6点就够了

    1. 前言

    经常有同学会遇到poco不断重启的问题,但是又不知道如何处理,所以今天我们就来详细聊一聊 “poco重启” 这个话题。

    2. poco重启的表现

    首先,poco重启的表现是非常明显的,设备屏幕会一直闪烁;或者设备画面底部会出现一个提示: pocoservice:poco service is running one ,并且我们还可以看到log里面会重复刷下述的日志:

    3. poco重启的常规原因及解决方案

    那poco重启可能是有哪些原因导致的呢?我们来详细看下:

    1)未设置 允许自动启动、允许后台运行

    这是“最最最”常见的1个原因,所以放在第一位来说。在许多品牌手机上,我们都需要检查系统设置中,是否有 电池优化相关 或者 后台活跃相关 的选项,并将 PocoService.apk 设为允许自动启动、允许后台运行,否则就非常容易出现poco无限重启的问题。

    这里我们列举几个常见手机品牌的设置方式:

    • 华为:手机管家-应用启动管理-PocoService.apk-手动管理,允许自启动开启,允许后台活动开启
    • OPPO:设置-电池-应用耗电管理-PocoService.apk-允许应用自启动,允许完全后台行为
    • VIVO:电池-后台高耗电-> PocoService 开启
    • 一加:设置-电池优化-PocoService-不优化

    当然,不同手机品牌,甚至同品牌不同型号手机的配置方式,都有可能不大一样,同学们要自己查找手机里面与 电池优化后台活跃 相关的设置即可,保证给 pocoservice.apk 足够的活跃权限且不被电池优化行为干掉。

    2)电脑或者手机上设置了网络代理

    网络代理会影响 pocoservice.apk 的启动,所以我们务必关闭PC或手机上连接的网络代理Proxy 。

    3)与uiautomator同时启动

    pocoservice.apk 不能和 uiautomator 同时启动,否则会相互冲突。

    4)Android版本过低

    Poco支持 Android SDK API ≥ 19,即Android 4.4及以上,如果Android版本过低,可能影响 pocoservice.apk 的正常运行。

    5)重启/重装

    如果上述原因都排除之后,仍然无法解决 pocoservice.apk 重启的问题;我们可以尝试 重启手机 ;或者卸载掉手机里面的2个poco相关的apk,再从最新的IDE版本或者pocoui库里面找到最新的pocoservice的apk,重新安装 到我们的手机上。

    需要注意的是,使用1.2.11及更低版本的AirtestIDE(及1.0.83及更低版本的pocoui),poco相关的apk包含2个,所以如果是安装的这些版本的poco apk,我们需要卸载/重装2个apk,其中1个是pocoservice.apk,它会在我们的手机界面上出现1个图标:

    另外一个是只有几K的apk,它在手机桌面上不会出现图标,我们可以在应用列表中找到它:

    但对于新发布的1.2.12版本的IDE(及1.0.84版本的pocoui),已经将2个apk合二为一,大大简化了安装流程,同学们只需要安装/卸载1个 pocoservice.apk 即可。

    举个例子,如同学们之前使用的是1.2.11或者更低版本IDE安装的 pocoservice.apk ,想要升级到1.2.12版本的 pocoservice.apk ,只需要卸载手机桌面上带图标的那个 pocoservice.apk 即可,在1.2.12版本的IDE选择Android poco,将会在我们的手机上安装最新版本的 pocoservice.apk (只会安装1个,仅需安装1次)。

    3. 与IDE版本相关的poco重启问题

    1)使用1.2.12版本的IDE但设置的Python环境里pocoui不是最新版

    如果同学们使用了最新版的IDE1.2.12版本来查看设备的控件树(即设备安装了1.2.12里面的最新的 pocoservice.apk ),但是IDE却设置了本地Python环境,且该Python环境的 pocoui 并未更新到最新版(即1.0.84版本),则在运行脚本时,poco会出现不断重启的情况。

    解决办法是将IDE设置的本地Python环境里面的 pocoui 更新至最新的1.0.84版本:

    pip install -U pocoui
    

    意思是,如果同学们的设备安装了最新版的 pocoservice.apk ,在IDE上查看控件树就必须使用最新版的IDE,即1.2.12;运行poco脚本时,运行环境里面的 pocoui也必须是最新版,即1.0.84版本。

    2)1.2.11版本的pocoservice不支持在低版本Android使用

    1.2.11版本IDE里面的 pocoservice 升级后,兼容了一些H5页面的控件识别,但 在部分低版本Android设备不能正常安装使用(常见于模拟器,因为模拟器的Android版本一般较低)。

    或者在低版本Android设备成功安装后,使用时发现 poco 一直在重启。

    这时同学们可以卸载该版本安装的 2个 pocoservice.apk,然后安装比1.2.11版本更低版本IDE的2个 poco apk 使用。

    但更好的方式是,卸载之后,安装我们最新发布的1.2.12版本IDE里面的 pocoservice.apk 使用,仅需要安装1个apk即可。

    3)1.2.11及旧版本在高版本Android上弹出版本过低提示

    1.2.11及更低版本IDE里面的 pocoservice.apk ,在高版本Android设备上启动时,会提示“此应用专为旧版Android打造......”:

    除了点击确定之外,还可以下载我们最新发布的1.2.12版本的IDE,安装里面最新版本的 pocoservice.apk ,在高版本Android设备上将不会再出现这个版本过低的提示。

    4. 小结

    最后,附上poco重启排查的思维导图,有需要的同学可以收藏起来哦:


    Airtest官网https://airtest.netease.com/
    Airtest教程官网https://airtest.doc.io.netease.com/
    搭建企业私有云服务https://airlab.163.com/b2b

    官方答疑 Q 群:654700783

    呀,这么认真都看到这里啦,帮忙点个推荐支持一下呗,灰常感谢~

  • 相关阅读:
    在IE和Firfox获取keycode
    using global variable in android extends application
    using Broadcast Receivers to listen outgoing call in android note
    help me!virtual keyboard issue
    using iscroll.js and iscroll jquery plugin in android webview to scroll div and ajax load data.
    javascript:jquery.history.js使用方法
    【CSS核心概念】弹性盒子布局
    【Canvas学习笔记】基础篇(二)
    【JS核心概念】数据类型以及判断方法
    【问题记录】ElementUI上传组件使用beforeupload钩子校验失败时的问题处理
  • 原文地址:https://www.cnblogs.com/AirtestProject/p/15355658.html
Copyright © 2011-2022 走看看