亚行执行不起作用

时间:2017-03-02 19:52:53

标签: android adb

我试图使用ADB命令捕获我的android模拟器屏幕,但是当我执行命令时没有任何反应,没有错误也没有图像,这就是我正在运行的命令:

  

adb exec-out screencap -p /sdcard/Pictures/test.png

我尝试使用" adb shell ....",但对我来说太慢了。

我是否需要运行" exec-out"?或者我做错了什么?

3 个答案:

答案 0 :(得分:1)

您只需要一行:

adb exec-out screencap -p > [path]

示例:

adb exec-out screencap -p > d:\screenshot.png

答案 1 :(得分:0)

“adb exec-out”给出二进制输出。

您可以使用以下命令保存屏幕

adb shell screencap -p /sdcard/screencap.png

adb pull /sdcard/screencap.png C:\\Users\\<username>\\Pictures\\screencap.png

更多信息:

Read binary stdout data from adb shell?

答案 2 :(得分:0)

adb exec-out screencap是一种以位图格式生成屏幕截图的安全方法。

您可以使用管道读取该原始数据。前4个字节将little-endian整数标记为宽度。接下来的4个字节是高度。接下来的4个字节指示图像格式。接下来的字节是RGBA8888等图像的原始数据。

注意: 请勿使用来自adb shell screencap的原始数据。外壳程序将插入一些换行符,以便可能破坏数据。

参考: https://github.com/aosp-mirror/platform_system_core/blob/46f281edf5e78a51c5c1765460cddcf805e88d48/adb/daemon/framebuffer_service.cpp#L88-L91