kyle-ye/screenshieldkit
A Swift framework to hide UIView/NSView/CALayer from being captured when taking screenshots.
Overview
| Workflow | Status | |-|:-| | iOS UI Tests | [[iOS UI Tests]](https://github.com/Kyle-Ye/ScreenShieldKit/actions/workflows/ios.yml) |
[Demo]
Getting Started
In your Package.swift file, add the following dependency to your dependencies argument:
.package(url: "https://github.com/Kyle-Ye/ScreenShieldKit.git", from: "0.1.0"),Then add the dependency to any targets you've declared in your manifest:
.target(
name: "MyTarget",
dependencies: [
.product(name: "ScreenShieldKit", package: "ScreenShieldKit"),
]
),Usage
Instead of wrapping your view in a secure UITextField or ScreenShieldView,
you can just directly call the hideFromCapture(hidden:) API on your view or layer.
import ScreenShieldKit
let view = UIView(frame: .zero)
view.hideFromCapture(hidden: true)
// Resture the behavior
view.hideFromCapture(hidden: false)Detailed documentation for ScreenShieldKit can be found on the Swift Package Index.
License
See LICENSE file - MIT
Credits
https://nsantoine.dev/posts/CALayerCaptureHiding
Package Metadata
Repository: kyle-ye/screenshieldkit
Default branch: main
README: README.md