以编程方式截取 iOS 中另一个应用程序的整个可滚动区域的屏幕截图

Posted

技术标签:

【中文标题】以编程方式截取 iOS 中另一个应用程序的整个可滚动区域的屏幕截图【英文标题】:Take screenshots programmatically of entire scrollable area of another app in iOS 【发布时间】:2017-04-26 00:08:51 【问题描述】:

目前,如果用户想要捕获的内容超过了一次屏幕所能容纳的内容,则重复滚动并截取屏幕截图是很麻烦的。

我想实现这样的功能,即应用户的请求(例如,通过点击自定义键盘上的特殊按钮),自动截取当前打开的应用程序的整个可滚动区域的屏幕截图并将其拼接在一起。

这可能吗?如果有,怎么做?

为了澄清,包含可滚动区域的应用程序是我无法控制的第三方应用程序,例如iMessage 或 Facebook。

编辑:我知道像 this one 和 this one 这样的答案是关于在我控制的应用程序中截屏的。据我所知,这些不适用于我的情况。如果我对此有误,请纠正我。

【问题讨论】:

【参考方案1】:

这是不可能的。每个应用程序都包含在一个受保护的沙盒中,其他应用程序无权访问。

您可以制作自定义键盘,但您仍然无法访问应用中不受您控制的任何视图。

【讨论】:

以上是关于以编程方式截取 iOS 中另一个应用程序的整个可滚动区域的屏幕截图的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Android 上以编程方式截取屏幕截图? [复制]

如何以编程方式关闭/禁用 iOS 11 中引入的屏幕截图弹出框?

您如何以编程方式在 Android ICS 及更高版本上截取屏幕截图?

以编程方式截取特定区域的屏幕截图

以编程方式在 iPad 中截屏

iOS:如何以编程方式将视图添加到情节提要视图