Ich möchte Screenshots von jeder laufenden App machen, während meine App im Hintergrund ist.Screenshot erstellen, wenn App geschlossen wurde
Ich habe einen Timer in der Methode applicationDidEnterBackground gesetzt.
func applicationDidEnterBackground(_ application: UIApplication) {
var timer = Timer.scheduledTimer(timeInterval: 10, target: self, selector: #selector(self.takeSS), userInfo: nil, repeats: true)
}
Und ich erstellt eine Methode namens takeSS
func takeSS(){
UIGraphicsBeginImageContextWithOptions((window?.bounds.size)!, false, UIScreen.main.scale)
self.window?.drawHierarchy(in: (window?.bounds)!, afterScreenUpdates: true)
var image:UIImage = UIGraphicsGetImageFromCurrentImageContext()!
UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil)
}
Es dauert Bildschirm schießen alle 10 Sekunden und es in die Kamerarolle speichern. Aber Screenshots sind weiße und leere Fotos. Gibt es eine Möglichkeit, Screenshots zu machen, wenn die App geschlossen ist?
Vielen Dank.
Es sind nur wenige Arten der Hintergrundverarbeitung erlaubt - https://developer.apple.com/library/content/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html#//apple_ref/doc/uid/ TP40007072-CH4-SW4 - und das ist keiner von ihnen. Sie fragen im Wesentlichen nach, wie eine Sandbox-App andere Sandbox-Apps ausspionieren kann. – Ssswift