android – takeScreenshot总是为uiautomator返回false
作者:互联网
我试图在Galaxy S4和Kindle HDX 8.9上自动“截取屏幕”,我正在使用以下代码.
if(!(getUiDevice().takeScreenshot(new File("ANYPATH"))))
System.out.println("False: Screenshot not taken!!");
else
System.out.println("Gangnam Style...");
我试过的ANYPATH值:
> / data / local / tmp /(对于两个设备).不知道我在哪里可以找到设备上的这个文件夹,我试过这个,因为我把我的罐子推到了这个位置.
> / sdcard / pictures /(适用于Kindle HDX)
> / storage / emulated / 0(适用于Galaxy S4)
无论我尝试的路径如何,条件总是返回false,并且屏幕截图不会在任何设备(实际设备而非模拟器)上进行.我不确定我在这里错过了什么?
我只是遵循http://developer.android.com/tools/help/uiautomator/UiDevice.html#takeScreenshot(java.io.File)的语法
问候,
Rumit
解决方法:
takeScreenshot()方法适用于4.2及以上的android版本设备.
如果设备版本合适,请使用以下代码.
File path = new File("/sdcard/filename.png");
int SDK_VERSION = android.os.Build.VERSION.SDK_INT;
if (SDK_VERSION >= 17) {
mUiAutomatorTestCase.getUiDevice().takeScreenshot(PATH);
}
我们可以通过以下命令查看该文件.
$adb shell ls -l / sdcard / name-of-file
标签:uidevice,uiautomator,android,automation 来源: https://codeday.me/bug/20190831/1774511.html