《自拍教程42》Python adb一键读取系统版本信息

Android系统测试,
开始测试前,我们需要先确认所测试的系统版本是否正确,
还有报bug的时候,开发需要你提供具体的系统版本信息。
还有系统打版时间等,
不同的版本修复了不同的bug,合入了不同的新功能等,
如果测试人员测试的系统版本都不对,会直接被开发怼到哭。
如何一键获取Android系统版本信息呢?
一般我们通过读取/system/build.prop这个配置文件来获取,
这套方案基本适合所有的Android终端设备获取系统版本信息。


准备阶段
  1. adb shell cat /system/build.prop,可以获取系统版本信息。
  2. os.popen()可以轻易地获取以上命令的输出字符串。
  3. python的re正则表达式可以轻易地进行数据匹配,查找等强大的字符串处理

build.prop文件介绍

build.prop是Android系统中的一个重要的属性文件,
其是在版本编译时自动生成的一个属性文件,
记录了包括系统版本,系统编译时间,Android版本号等,
刷机完成后,一般存储在Android设备的/system/build.prop文件。
我们可以通过cat /system/build.prop命令查看这个文件.
比如魅族Note5的build.prop文件(可点击下载)

os.popen()函数介绍

之前的课程,我们一直用的是os.system()函数执行命令行,
本次我们增加难度,换用os.popen()函数执行命令行,
os.popen()函数的优势是:

  1. 能很方便地获取命令执行后的输出字符串
  2. 非阻塞式执行命令

Python批处理脚本形式
# coding=utf-8

import os
import re

#执行并读取命令行输出
info = os.popen("adb shell cat /system/build.prop").read()
# 一般获的的字符串都先建议进行移除字符串头尾的空格和换行符
info = info.strip()

# 获取系统版本
try:
    build_version = re.findall(r"ro.build.display.id=(.*)", info)[0].strip()
except:
    build_version = "Unknown"
print("Build Version: %s"%build_version)

#获取系统版本打版(编译)时间
try:
    build_time = re.findall(r"ro.build.date=(.*)", info)[0].strip(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值