adb命令截图保存出错解决方案
小于 1 分钟
在使用adb 工具截图保存到电脑端的时候,命令为:
adb exec-out -p > my/path
上面的命令获得的截图在windows系统上会出错,这是由于windows默认使用的换行符为\r\n
而Andriod
系统使用的是Linux
内核,其换行表示为\n
,在手机端把二进制数据流传输给电脑时,Windows
会自动把\n
替换为\r\n
因而为了正确显示,还需要一个转换,我们编写Python的转换代码如下:
# 转换图片格式
# adb 工具直接截图保存到电脑的二进制数据流在windows下"\n" 会被解析为"\r\n",
# 这是由于Linux系统下和Windows系统下表示的不同造成的,而Andriod使用的是Linux内核
def convert_img(path):
with open(path, "br") as f:
bys = f.read()
bys_ = bys.replace(b"\r\n",b"\n") # 二进制流中的"\r\n" 替换为"\n"
with open(path, "bw") as f:
f.write(bys_)
使用上面的函数转换后即可正确打开图片了!