我的 Delphi XE7 应用程序的 Android 屏幕截图

Fra*_*ada 2 delphi android screenshot firemonkey delphi-xe7

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

Rem*_*eau 5

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

public boolean takeScreenshot (File storePath)

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

参数

应将
PNG 写入的storePath


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

public boolean takeScreenshot (File storePath, float scale, int quality)

截取当前窗口的屏幕截图并将其存储为 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) 启动一次。