无法在模拟器中检测到屏幕截图

0 screenshot wkwebview swiftui

我正在尝试实现网络视图的屏幕截图和屏幕录制检测。阅读完这个问题的答案后,我编写了以下代码:

struct WebContentView: View {

    @Binding var htmlName: String
    @State var isRecordingScreen = false

    var body: some View {
        Webview(htmlFileName: htmlName)
            .onReceive(NotificationCenter.default.publisher(for: UIApplication.userDidTakeScreenshotNotification)) { _ in
                print("Screenshot taken")
            }
            .onReceive(NotificationCenter.default.publisher(for: UIScreen.capturedDidChangeNotification)) { _ in
                isRecordingScreen.toggle()
                print(isRecordingScreen ? "Started recording screen" : "Stopped recording screen")
            
            }
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,当我使用模拟器运行应用程序并截取屏幕截图时,没有打印任何内容。

我究竟做错了什么?

Raj*_*han 6

与 Xcode 12.5.1 配合良好,似乎您直接从保存屏幕按钮截取屏幕截图。保存屏幕按钮不是屏幕截图按钮。

从此命令截取屏幕截图

设备 -> 触发截图

在此输入图像描述