【发布时间】:2018-10-23 05:30:49
【问题描述】:
当我尝试在 Android Studio 中从我的一些项目中截取屏幕截图时(通过按下相机图标),我收到以下消息:
"Unexpected error while obtaining screenshot from device: EOF"
如果我在打开一个完全不同的项目后单击相机图标,我可以截取相同的图像。是否有一些与项目相关的损坏文件需要删除和替换?
【问题讨论】:
标签: android screenshot
当我尝试在 Android Studio 中从我的一些项目中截取屏幕截图时(通过按下相机图标),我收到以下消息:
"Unexpected error while obtaining screenshot from device: EOF"
如果我在打开一个完全不同的项目后单击相机图标,我可以截取相同的图像。是否有一些与项目相关的损坏文件需要删除和替换?
【问题讨论】:
标签: android screenshot
我最近遇到了这个问题 - 以前一切正常。 显然,它是在几周前我迁移到 SDK 26 时开始的。这为我修复了它: - 关闭工作室 - 将 Android\sdk\platform-tools 中的 adb.exe 重命名为 .saf - 将旧的 adb.exe 从 Android\android-sdk\platform-tools 复制到 Android\sdk\platform-tools - 重启工作室
所以基本上用旧版本替换 SDK 26 adb.exe...
【讨论】:
在我的情况下,重新启动 Android Studio 对我有用。 转到文件--> 使缓存无效/重新启动-> 无效并重新启动。
但是对于重启后仍然有问题的人。如果你设置了getActivity().getWindow().addFlags(LayoutParams.FLAG_SECURE);(一般用来避免截图),它也会阻止你从Android Studio截图,在获取截图时产生同样的错误Unexpected Error。
【讨论】:
我尝试这种方式工作:
使用内容创建 adb_capture.txt
REM ====================
REM set varible _MyTime for filename
FOR /F "tokens=1-4 delims=:." %%a IN ("%time%") DO (
SET _MyTime=%%a%%b%%c%%d
)
REM adb root
REM adb remount
adb shell screencap -p /sdcard/Download/s1.png
adb pull /sdcard/Download/s1.png
adb shell rm /sdcard/Download/s1.png
REM every file have different name by time
rename s1.png %_MyTime%.png
REM===============
将文件名更改为 adb_capture.bat,而不是点击运行,这将捕获手机屏幕
【讨论】: