屏幕保护工具包

通过应用后台截图安全防止数据泄露,并阻止 iOS 截图。

CocoaPods

pod 'ScreenProtectorKit'

Swift Package Manager

在你的 Package.swift 文件中,添加 ScreenProtectorKit 依赖到相应的 targets

let package = Package(
  dependencies: [
    .package(url: "https://github.com/prongbang/ScreenProtectorKit.git", from: "1.3.1"),
  ],
)

如何使用

阻止截图

import ScreenProtectorKit

class AppDelegate: FlutterAppDelegate {

    private lazy var screenProtectorKit = { return ScreenProtectorKit(window: window) }()

    override func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
    ) -> Bool {
    
        screenProtectorKit.configurePreventionScreenshot()
    
        return true
    }

    override func applicationDidBecomeActive(_ application: UIApplication) {
        screenProtectorKit.enabledPreventScreenshot()
    }

    override func applicationWillResignActive(_ application: UIApplication) {
        screenProtectorKit.disablePreventScreenshot()
    }
    
}

模糊后台截图

import ScreenProtectorKit

class AppDelegate: FlutterAppDelegate {

    private lazy var screenProtectorKit = { return ScreenProtectorKit(window: window) }()

    override func applicationDidBecomeActive(_ application: UIApplication) {
        screenProtectorKit.disableBlurScreen()
    }

    override func applicationWillResignActive(_ application: UIApplication) {
        screenProtectorKit.enabledBlurScreen()
    }
    
}

图片后台截图

import ScreenProtectorKit

class AppDelegate: FlutterAppDelegate {

    private lazy var screenProtectorKit = { return ScreenProtectorKit(window: window) }()

    override func applicationDidBecomeActive(_ application: UIApplication) {
        screenProtectorKit.disableImageScreen()
    }

    override func applicationWillResignActive(_ application: UIApplication) {
        screenProtectorKit.enabledImageScreen(named: "LaunchImage")
    }
    
}

颜色后台截图

import ScreenProtectorKit

class AppDelegate: FlutterAppDelegate {

    private lazy var screenProtectorKit = { return ScreenProtectorKit(window: window) }()

    override func applicationDidBecomeActive(_ application: UIApplication) {
        screenProtectorKit.disableColorScreen()
    }

    override func applicationWillResignActive(_ application: UIApplication) {
        screenProtectorKit.enabledColorScreen(hexColor: "#ffffff")
    }
    
}

检查屏幕录制

import ScreenProtectorKit

let isRecording = screenProtectorKit.screenIsRecording()