美文网首页
自动抓取渠道包欢迎页的脚本

自动抓取渠道包欢迎页的脚本

作者: elesg | 来源:发表于2018-06-04 22:28 被阅读0次

    需求背景

    有一个版本需要按照渠道区分欢迎页样式,需要每个渠道包都检查一次欢迎页,总共100+个渠道包手工检查非常麻烦。鉴于检查欢迎页样式步骤简单,只需安装后启动APP检查首个欢迎页即可,所以写了一个简单的脚本来执行这个操作。

    脚本设计思路

    • 安装app→ 启动app→等待欢迎页出现→截图保存到手机特定文件夹→ 卸载app
    • 遍历文件夹内所有的apk文件,并取渠道名为截图命名,将运行结束的apk文件移到另外的文件夹
    apppath="."
    # 如果当前文件夹下没有“run”文件夹,就新建一个
    if [ ! -d "./run" ]; then
    mkdir ./run
    fi
    # 开始遍历文件夹
    for file in ${apppath}/*
    do
    # 抽取后缀名为apk的文件
    if [[ $file == *.apk ]] || [[ $file == *.APK ]]
    then
      
    # 取出包名并过滤出渠道号
    # 例:MyAPP_WHAN_channel_v8.1.0.apk ==> WHAN_channel_v8.1.0
    qudao=${file#*WHAN_}
    qudao=${qudao%.apk}
      
    # 安装app
    adb install $file
     
    # 启动app并等待5s,这个等待时间视手机而定,在启动后还可根据不同的手机系统插入系统弹窗的处理步骤
    adb shell am start -n com.myapp.myapp/com.myapp.myapp.app.main.SplashActivity
    sleep 5
     
    # 截屏两次,并以渠道包来命名
    # 需要先在手机创建文件夹/storage/emulated/0/DCIM/welcome
    adb shell /system/bin/screencap -p /storage/emulated/0/DCIM/welcome/$qudao.png
    sleep 2
    adb shell /system/bin/screencap -p /storage/emulated/0/DCIM/welcome/$qudao.png
    sleep 1
      
    # 卸载app,输出日志并将已执行的apk移动到run文件夹
    adb uninstall com.myapp.myapp
    echo $qudao+"done"
    mv $file ./run
     
    fi
    done
    

    使用方法

    • 执行脚本前在手机上必须存在 /storage/emulated/0/DCIM/welcome/这个文件夹,如不存在,需要先手动创建好(也可以直接用脚本检测创建)
    • 执行脚本前需要先卸载手机上的被测的APP(脚本调整为前置删除/覆盖安装也可以)
    • 将上述脚本放在渠道包的文件夹目录下执行,支持随时停止,停止后卸载掉手机上的PPmoney理财APP才可继续运行
    • 执行完成后使用adb pull的命令将整个截屏的文件夹放到电脑上进行检查,即可快速检查出有问题的渠道包。

    PS1:上述脚本是基于小米6的手机进行调试的,使用其他手机执行还需要进行系统弹窗处理+等待时间的调整。同时非常建议使用小米6进行执行,因为执行速度快,没有系统弹窗。

    PS2:目前只能在Mac OS顺利执行,在Windows系统运行到截图就提示报错,应该是在Windows的运行shell脚本的程序没有安装adb导致,按照上述思路出一个.bat版本脚本即可

    相关文章

      网友评论

          本文标题:自动抓取渠道包欢迎页的脚本

          本文链接:https://www.haomeiwen.com/subject/akrusftx.html