android - 如何从屏幕截图中排除叠加层?

标签 android android-studio overlay android-mediaprojection

位于this answer我认为至少存在系统应用程序的解决方案(或者可能也存在于 Root设备中?)。碰巧我不理解答案评论上链接的代码示例。有人可以逐步解释实现这一点(如果可能,请提供代码示例)?提前致谢。

最佳答案

由于 androids 处理屏幕截图的方式,排除覆盖是不可能的。但是,如链接中所述,您可以制作没有叠加层的屏幕截图。
这将导致您的屏幕截图中出现未渲染的洞,那里只有黑色背景。
如果你想要这样,你可以很容易地在你拍摄屏幕截图的那一刻让你的覆盖层变黑,甚至禁用可见性,以获得干净的屏幕截图。为了给您更详细的答案,我们需要一个更精确的问题,其中包含您如何编写代码的示例和想法。
编辑:
问题是,理论上您可以深入研究 androids 源代码并更改屏幕截图行为。但是,您将自己创建一个新的 Android 版本。正如@Hassan Uddin 所说。在您的手机上运行它需要您深入挖掘 androids 源代码,并且可能在那里找不到任何答案。

关于android - 如何从屏幕截图中排除叠加层?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68402088/

相关文章:

java - 谷歌地图从异步任务 onPostExecute 在 Canvas 上叠加绘图

java - android中无法启动服务错误

android - ADB:使用 Uri 中的多个参数从 adb 启动 VIEW Intent

Android导航组件+登录流程+嵌套BottomNavigationView

android - 无法在离线模式下构建。 "No cached version listing for androidx.fragment:fragment:[1.2.0] available for offline mode"

Android Studio编译旧图标

android - 使用带有 'Hello World' 的 JSON 作为示例

Android Studio 在截屏时卡住

javascript - Angular.js 通过单击元素以外的任何地方关闭

python - 用 Python 覆盖屏幕,用背景 Python 脚本在事件窗口上绘制