sup*_*eng 11
我会回答我自己的问题.答案可能是设备指定的(nexus7 2013),您可以将其调整为您自己的设备.
1.首先,我发现命令screencap screen.png
很慢,因为它大部分时间都转换为png文件类型.因此,为了节省时间,第一步是将屏幕转储到原始数据文件.
adb shell
screencap screen.dump
2.检查文件大小.我的屏幕分辨率是1920*1200,文件大小是9216012字节.注意到9216012 = 1920*1200*4 + 12,我猜数据文件使用4个字节来存储每个像素信息,并使用另外12个字节来做一些神秘的工作人员.再做一些screencaps,我发现每个文件头部的12个字节是相同的.因此,额外的12个字节位于数据文件的头部.
现在,通过使用dd
和,事情很简单hd
.假设我想获得(x,y)的颜色:
let offset=1200*$y+$x+3
dd if='screen.dump' bs=4 count=1 skip=$offset 2>/dev/null | hd
我得到这样输出
00000000: 4b 73 61 ff s 21e
sum 21e
的4b 73 61 ff
就是我的回答.