Why On-Device AI Matters for Screenshots
Screenshots are sensitive. They contain prices, flight details, personal conversations, banking info. Uploading them to a cloud AI is a non-starter for most users.
The good news: iOS gives you everything you need to build a capable AI pipeline that runs entirely on-device. Here's how I did it for Snaap , an AI screenshot cleaner.
The Pipeline
Step 1: Find the Screenshots
let options = PHFetchOptions () options . predicate = NSPredicate ( format : "mediaType == %d AND (mediaSubtypes & %d) != 0" , PHAssetMediaType . image . rawValue , PHAssetMediaSubtype . photoScreenshot . rawValue ) options . sortDescriptors = [ NSSortDescriptor ( key : "creationDate" , ascending : false )] let screenshots = PHAsset . fetchAssets ( with : options )
Enter fullscreen mode
Exit fullscreen mode
iOS natively tags screenshots — no ML model needed for detection.
Step 2: Extract Text with Vision OCR
let request = VNRecognizeTextRequest { request , error in let text = request .…