2

在我的 Android 手机上:如何在我的 Delphi XE7 应用程序中同时按住右侧的待机键和主页按钮。即访问这两个按钮以从我的应用程序(到图片文件夹)中进行屏幕截图?

4

1 回答 1

5

在 API 级别 17 (Jelly Bean MR1) 及更高级别中,Android 的com.android.uiautomator.core.UiDevice类有两种takeScreenshot()方法:

public boolean takeScreenshot(文件存储路径)

截取当前窗口的屏幕截图并将其存储为 PNG 默认比例为 1.0f(原始大小)并使用 90% 质量 屏幕截图会根据屏幕旋转进行调整

参数

存储路径
应将PNG 写入的

如果屏幕截图创建成功,则返回
true,否则返回 false

public boolean takeScreenshot(文件存储路径,浮动比例,整数质量)

截取当前窗口的屏幕截图并将其存储为 PNG 屏幕截图根据屏幕旋转进行调整

参数


应将PNG 写入的storePath


如果需要,缩小屏幕截图;1.0f 为原始尺寸

PNG压缩的质量
;范围:0-100

如果屏幕截图创建成功,则返回
true,否则返回 false

对于较旧的 Android 版本,没有屏幕截图 API,并且您无法模拟硬件按键以可编程地强制它。尽管似乎有一些方法可以让View对象将自身呈现为Bitmap对象,然后您可以根据需要使用它们。

App Store 中有第三方应用程序可以截取屏幕截图,因此您可以使用Intent.

并且有第三方截图库可用,例如Google Code 上的Android 截图库:

Android 屏幕截图库 (ASL) 能够以编程方式从 Android 设备捕获屏幕截图,而无需拥有 root 访问权限。相反,ASL 使用在后台运行的本机服务,每次设备启动时通过 Android 调试桥 (ADB) 启动一次。

于 2014-11-03T23:27:48.780 回答