4

我想截取我手机上运行的 Android 应用程序的屏幕截图。

我尝试使用ScreenShot UX应用程序。这也可以在无根电话上完成。知道如何从后台运行的服务中获取 Android 中应用程序的屏幕截图吗?

我希望我的服务定期捕获屏幕并发送到服务器。

4

3 回答 3

12

获取非您自己的应用程序屏幕截图的唯一方法是获取原始帧缓冲区。帧缓冲区通常位于/dev/fb0/dev/graphics/fb0。在某些设备(如 LG Optimus One)上,无需 root 权限即可访问,但在大多数设备(如 Nexus S)上,您需要为此获得 root 权限。出于安全原因,通常不允许这样做,因为恶意应用程序可能会在后台截取屏幕截图并将其发送到远程服务器,从而泄露电子邮件 ID 和密码等信息,在某些情况下还会泄露银行账户详细信息。

于 2012-06-30T10:27:55.900 回答
9

看看Android-screenshot-library,它能够以编程方式从 Android 设备捕获屏幕截图,而无需拥有 root 访问权限。

于 2012-06-30T04:56:35.427 回答
8

从 Android 5.0+ 开始,您可以使用 SDK 中称为媒体投影的新功能来进行屏幕捕获,而无需 root 权限。Google 提供的示例代码可在此处获得。

于 2015-06-02T02:00:37.723 回答