Uy… sí que no entendí casi nada del porqué Juan hizo lo que hizo. Entiendo cómo funcionan los ifs, los if lets, los do-catch, pero no entendí lo de pngData, lo de FileManager.defaults. Por qué se usan urls. El por qué de un for: .documentDirectory, in: .userDomainMask. Por qué es un arreglo y por qué en la posición cero.
En fin, creo que esta clase debería ser explicada con más detalle en el por qué y para qué sirve cada una de esos trozos de código (mencionados arriba). O por lo menos dónde encontrar bibliografía al respecto.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?